Method and system of promoting human-assisted search

ABSTRACT

A method and system of promoting service(s) of a search system are disclosed. A monitoring software or a search monitor may be operative on a user device. A user may be notified of an alternate search result(s) when such a result is identified. Condition(s) whereby a notification is presented to a user may be modified based on user action(s) and/or other information.

BACKGROUND

1. Field

The present invention is related to search engine technologies includinghuman-assisted search engines and, more particularly, to integrating ahuman-assisted search with other applications in order to promote usageof the search system.

2. Description of the Related Art

Generally, search systems supply a user with a toolbar or other helperapplication in order to assist the user in more effectively utilizing asearch system. Such an add-in or extension may be integrated with a webbrowser in order to produce a common look and feel with the web browser.A web browser may allow a user to designate a default search engine forthe browser when a search query is entered, or a user enters a uniformresource locator (URL) in the address bar.

Toolbar extensions have been implemented by search engine companies suchas Yahoo!®, Google®, and others in order to promote usage of searchservices. However problems exist with using a toolbar for promotionalpurposes. The presence of multiple toolbars may cause informationoverload for the consumer. In addition, the user may have a preferreddefault search system, and not desire to have an added toolbar from acompetitive search system taking up useful space in a display.

In addition, presence of a ‘pop-up’, interstitial or other advertisementpage which is not desired may be annoying to a user. As a result, thereis a need for a method and system of promoting a human-assisted searchservice which is integrated with other applications.

SUMMARY

The disclosed system and method include receiving a search request,determining whether a search result pertaining to the search request isavailable and providing an indication of the search result based on thedetermining.

The disclosed method promotes a search service including by determiningwhether a result related to a request is available responsive todetection of receipt of the request and inserting an indication of theresult within information provided as a response to the request.

The method and system disclosed obtains a result from an applicationseparate from a browser providing the information.

A system embodiment, methods, data structures and interfaces foroperating the embodiments are disclosed.

These together with other aspects and advantages which will besubsequently apparent, reside in the details of construction andoperation as more fully hereinafter described and claimed, referencebeing had to the accompanying drawings forming a part hereof, whereinlike numerals refer to like parts throughout.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a system embodiment.

FIG. 2 is a flow diagram of a process for parsing a message.

FIG. 3 illustrates an exemplary URL of a search request.

FIG. 4 is a flow diagram of a process for responding to a searchrequest(s).

FIG. 5 is a flow diagram of a process for providing a search result(s)

FIG. 6 illustrates a search monitor log record.

FIG. 7 illustrates a search monitor user record.

FIG. 8 illustrates a searcher record.

FIG. 9 illustrates a query record.

FIG. 10 illustrates a keyword record.

FIG. 11 illustrates a category record.

FIG. 12A is a diagram illustrating a database relationship.

FIG. 12B is a diagram illustrating a selection process.

FIG. 13 is a flow diagram of a process for selecting a search result(s).

FIG. 14 is a flow diagram of a process for selecting a searcher(s).

FIGS. 15A-15C illustrate exemplary graphical user interfaces (GUI's) fora user.

FIG. 16 is a flow diagram of a process for presenting a notification toa user.

FIG. 17 illustrates an exemplary web page.

FIG. 18 illustrates an exemplary GUI for notification of a user.

FIG. 19 illustrates an exemplary GUI for notification of a user.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Reference will now be made in detail to the present embodimentsdiscussed herein, examples of which are illustrated in the accompanyingdrawings, wherein like reference numerals refer to the like elementsthroughout. The embodiments are described below to explain the disclosedsystem and method by referring to the figures. It will nevertheless beunderstood that no limitation of the scope is thereby intended, suchalterations and further modifications in the illustrated device, andsuch further applications of the principles as illustrated therein beingcontemplated as would normally occur to one skilled in the art to whichthe embodiments relate.

To promote the services of a search system, an extension and/or aservice is installed on a user system. The extension or service maymonitor action(s) of a user to determine if a search request issubmitted. If a search request is detected, the search monitor maysubmit the search request to an alternate search service which mayutilize the assistance of one or more human assistants or ‘guides’. Theextension and/or service may be referred to as a ‘search monitor’.

The disclosed method and system includes an application, an extension orother software which monitors activity of a user or ‘search monitor’.When a user conducts a search, a search monitor may send a searchrequest to an alternate search engine, such as a human-assisted searchsystem. When a request is received by a search system, the searchdatabase is reviewed using content of a search request and a searchmonitor is notified if a search result has been identified which may besuperior to a result(s) produced by a search system identified by thesearch monitor. A search monitor may notify a user that a search resultis available and/or that a searcher in a related topic is available.User response to a notification may be monitored by a search monitor. Asearch monitor may send a request to a search system responsive to auser action.

Search monitor behavior may be modified based on information obtained bya search system. For example, if a user declines the service(s) of ahuman-assisted search system, a search monitor may cease to presentnotifications to a user. In this way, the services of a human-assistedsearch system maybe promoted without annoying a user with a notificationwhich may be unwanted or irrelevant. A notification which is integratedwith an application is presented to a user if an alternate result isavailable. The notification is integrated with one or more applications,and does not require a user to take specific actions to obtaininformation of the results provided by an alternate search service.

A search monitor may compare a search result(s) provided by an alternatesearch system to a search result(s) provided by a primary or defaultsearch system. If it is determined that a search result(s) is availablefrom an alternate search system which has been determined to be superiorto the search result(s) provided by the primary search system, thesearch monitor may provide a notification to a user of the alternatesearch result(s).

If it is determined that a search result(s) responsive to a query whichis judged to be superior to that produced by a primary search system isnot available, the query or search request may be submitted to a humansearcher or guide who may provide a search result(s) responsive to thesearch request. If a searcher produces a search result(s), a user whosubmitted a query may be notified that a human selected response to thesearch request is available.

An indication of the presence of an alternate search result(s) may bepresented in various ways. In at least one embodiment, an indication maybe presented within the rendering of information in a browser windowsuch that it is integrated with a search result(s) which are presentedfrom a primary search system. In other embodiments, an indication may beprovided in a toolbar and/or other area outside the browser window orother application rendering window. In other embodiments, may beprovided as a ‘pop-up’, an interstitial window, or an indication in aborder area of a user display such as the ‘service tray’ in a Windows®operating system environment.

As illustrated in FIG. 1, in at least one embodiment, system 100 isprovided. The system 100 includes a searcher system 105, 110, a network115 such as the Internet, an alternate search system 130, a user system135, 140, a database 120, which may comprise various records, anapplication program 150, and a search monitor 155, of which one or moremay be resident in any user system, such as the user systems 135, 140,and a primary search system 160.

Each of the searcher systems, that is, the searcher systems 105, 110 canbe operated by a human searcher or ‘guide’ or ‘searcher’, who may be anyperson, to obtain search result(s) and/or other information for aninformation seeker located at user systems (e.g., the user system 135,140). While only a limited number of searcher and user (also referred toas an information seeker or requester) systems are depicted in FIG. 1,it is within the scope of the disclosure for multiple searcher and usersystems to be utilized.

The network 115 (FIG. 1) may be a global public network of networks (theInternet) and/or consist in whole or in part of one or more privatenetworks and communicatively couples the searcher systems 105, 110 anduser systems with the other components of the system such as thealternate search system 130, and the database 120.

The alternate search system 130 allows interaction to occur between thesearcher systems 105, 110 and the user systems 135, 140. For example, aninformation search query(ies) can be transmitted from the user system135, 140 to the alternate search system 130, where a query(ies) can beaccessed by the searcher systems 105, 110. Similarly, a search result(s)produced using the searcher systems 105, 110 in response to a searchquery(ies) produced by the user system 135, 140 are transmitted to thealternate search system 130, where they may be stored by the alternatesearch system 130 and may be transmitted to the user systems 135, 140.

The user systems 135, 140 may be operated by any person or entity andmay include within the scope of the disclosure, any device through whichan information seeker can submit a query to and/or receive a result(s)from the alternate search system 130. In one embodiment, the user system135 may be a device configured for connection to a network and may runweb browser software. Thus, the user system 135 may be a laptop,personal data assistant, desktop PC or Mac®, a workstation or terminalconnected to a mainframe, or a smart phone, etc. within the scope of thedisclosure. The alternate search system 130 may include a gateway forvoice communication, a speech-to-text system or other transcriptiondevice and/or personnel to facilitate access to the alternate searchsystem 130 via voice communications such as through a land line phone,cellular phone, Voice Over Internet Protocol (VoIP) or other telephonicdevices. Such devices may also be user systems 135 within the scope ofthe disclosure.

The user systems 135,140, the searcher systems 105,110, and thealternate search system 130 may include equipment and personnel requiredto send and/or receive messages between a user system, a guide system, aresource system and/or the search system using the network 115. Forexample, a guide system(s) may be utilized for speech-to-texttranscription, a user system may include text-to-speech conversioncapabilities, or automated conversion of text to speech or speech totext may be performed. The database 120 may include information whichmay allow the alternate search system 130 to establish communicationbetween the other elements of the system. Likewise the alternate searchsystem 130 may include hardware and/or software which may allow a userto submit a search request using communication services such as InstantMessaging (IM), or text messaging such as Short Messaging Service (SMS),Enhanced Messaging Service (EMS), Multimedia Messaging Service (MMS)and/or other types of messaging services.

The alternate search system 130 is communicatively coupled with thedatabase 120. As will be described herein in further detail below, thedatabase 120 includes data that is processed in association withoperation(s) of the embodiments. Although FIG. 1 illustrates thedatabase 120 as a separate component of the system, the database 120 maybe integrated with the alternate search system 130. Further, the recordsmaintained in the database 120 may be stored in any typical manner,including in a Network Attached Storage (NAS), a Storage Area Network(SAN), etc. using any typical or proprietary database software such asDB2®, Informix®, Microsoft® SQLServer™, MySQL®, Oracle®, etc., and mayalso be a distributed database on more than one server. Elements of thedatabase 120 may reside in any suitable elements of the system 100.

A user system, a guide system, and/or a resource system may be a desktopor laptop PC or Mac®, a mobile phone, a smart phone, a PDA, a serversystem, a landline phone, a specialized communication terminal, aterminal connected to a mainframe, or any other communication device.The alternate search system 130 may include one or more servers,computers, etc. After being presented with the disclosure herein, one ofordinary skill in the relevant art will immediately realize that anyviable computer system(s) or communication device(s) known in the artmay be used as user systems, guide systems, resource systems, and/or toimplement the alternate search system 130 and/or the primary searchsystem 160.

The primary search system 160 may be any search system which may receivea user search request from a user system such as the user systems135,140 using the network 115. While only one primary search system 160is depicted in FIG. 1, it is within the scope of the disclosure formultiple primary search systems 160 to be utilized.

The application program 150 may be any software application(s) which mayoperate on a user system such as the user system 135. In at least oneembodiment the application program 150 may be a web browser applicationsuch as Firefox®, Microsoft Internet Explorer®, Safari® or applicationssuch as Adobe Photoshop, OpenOffice, GIMP, and/or other applicationswhich may be extended. Multiple application programs 150 may beoperative on the user system 135.

The search monitor 155 may be an extension which interfaces with theapplication program 150. Alternately, the search monitor 155 may be aservice which is operative on the user system 135. The search monitor155 may be installed and/or started in any suitable way. For example,the search monitor 155 may be downloaded from a server such as a serverassociated with the alternate search system 130, or the search monitor155 may be pre-installed on a user system, or the search monitor 155 maybe loaded from any storage media such as Flash Memory, CD-ROM, DVD-RW orother storage media well known in the art. The search monitor 155 mayprovide a unique identifier (ID) which may be associated with amessage(s) sent by the search monitor 155. A unique identifier may allowthe alternate search system 130 to identify a message(s) associated withthe search monitor 155. The search monitor ID may be used for variouspurpose(s). For example, a search monitor behavior may be modified basedon a search monitor ID and/or any information included in the database120 and/or information resident in the user system 135. Operation of asearch monitor such as the search monitor 155 will be described furtherherein below.

The primary search system 160 may be any search system which may receivea user search request and respond to the request using the network 115.For example the primary search system 160 may be a search engine servicesuch as Google®, Ask®, and/or any other search system.

The search monitor 155 may monitor activity of a user of the user system135 to determine if a user submits a search request to a search system,such as the primary search system 160. If such a request is detectedfrom for example the application program 150, the search monitor 155 mayrespond to such a request as described further herein below.

As illustrated in FIG. 2, a process 200 for analyzing a message isprovided. In operation 205, a determination is made as to whether a newmessage (URL) has been detected. If in operation 205 it is determinedthat a new message has not been detected, control remains at operation205. If in operation 205 it is determined that a new message has beendetected, control is passed to operation 210 and process 200 continues.The determination in operation 205 may made based on informationobtained by, for example, the search monitor 155 (FIG. 1). The searchmonitor 155 may obtain such information within the framework of theapplication program 150, or via the operating system of the user system135.

In operation 210 the message detected in operation 205 is analyzed(parsed). For example, a parsing operation may be performed on a URLobtained by the search monitor 155 (FIG. 1) to detect characters withinthe URL which identify a parent URL as illustrated in FIG. 3. Control ispassed to operation 215 and process 200 continues.

In operation 215 a determination is made as to whether a messagecontains or matches a search request. If in operation 215 it isdetermined that a message does not contain or does not match a searchrequest, control is passed to operation 220, and process 200 continues.If in operation 215 it is determined that a message does contain asearch request, control is passed to operation 225 and process 200continues.

The determination in operation 215 may be made using various criteria.In at least one embodiment, a parent of a URL indicated in a message iscompared to a list of URLs to determine if the URL matches a URLcorresponding to a search engine such as the primary search engine 160(FIG. 1) and if the parent URL matches a URL in the list, it isdetermined that the message contains a search request. Alternately, anIP address associated with a message, or an IM credential, or an emailaddress, or any other content of a message might be examined in order todetermine whether a message contains a search request.

In operation 220 a URL(s), a time stamp(s), user action(s) and/or otherinformation may be obtained and/or recorded in a search monitor log.Control is passed to operation 205 and process 200 continues. A searchmonitor log may be maintained in storage media of the user system 135(FIG. 1), may be transmitted to an external storage via the network 115,and/or may be otherwise recorded. Exemplary content of a search monitorlog will be further described herein with respect to FIG. 6.

In operation 225 keywords and/or other elements of a message associatedwith a search request may be parsed according to a format based at leastin part on information which was identified in operation 215. Keywordsand/or other elements of a search request may be extracted from amessage. A message may be prepared and transmitted to the alternatesearch system 130 (FIG. 1).

In operation 230 a URL(s), a time stamp(s), user actions and/or otherinformation may associated with a message are recorded in a searchmonitor log. Any or all of a search monitor log may be transmitted to asystem(s), such as the alternate search system 130. In at least oneembodiment, information associated with a monitor log may be transmittedto the alternate search system 130 (FIG. 1). For example, a messageincluding an identifier of the search monitor 155, a query(s), and anidentifier of a primary search system may be transmitted to thealternate search system 130. Control is passed to operation 205 andprocess 200 continues.

The process 200 may be performed by for example the search monitor 155(FIG. 1), and/or may be performed by software operative on any suitabledevice(s) in the system 100. Any operation in the process 200 may beperformed by software operating on any device in the system 100. Forexample, a service might transmit a duplicate of a message transmittedby an application operative on the user system 135 to a serverassociated with the alternate search system 130, which may perform anyor all of the operations of the process 200. Preferably, the process 200is implemented by the search monitor 155 and is operative on the usersystem 135.

An exemplary search request is illustrated in FIG. 3. While a URL isused for the purposes of illustration, other types of data might beanalyzed in a similar manner to extract information regarding a messagewhich may be used to determine whether a message includes a searchrequest and/or the content of a request. As illustrated in FIG. 3, thesearch request URL 300 may include a parent URL section 305 (i.e.,‘http://www.dogpile.com/’), an additional information section 310 (i.e.,‘dogpile/ws/results/Web/’), which may for example describe a web pageand/or generate dynamic content, identify information which may be usedto select a search vertical, etc. and a search query information section315 (i.e., ‘who%20is%20brown%20leaves!3F’). The parent URL section 305may be used to identify a domain name including one associated with aservice. The additional information section 310 may be blank, or may beused to provide information to a search engine regarding a request. Thesearch query section 315 includes information of a search query string.The example in FIG. 3 is provided to illustrate the content of a searchrequest message. A search request URL may be represented using anymethods which are well known in the relevant art.

As illustrated in FIG. 4, a process 400 for providing a search result(s)to a user system is provided. The process 400 may be operative on theuser system 135.

In operation 405 a determination is made as to whether a message isdetected. If in operation 405 it is determined that a message is notdetected, control remains at operation 405 and process 400 continues. Ifin operation 405 it is determined that a message is detected, control ispassed to operation 410 and process 400 continues.

In operation 410 a determination is made as to whether a search requestis sent to a search system(s) such as the primary search system 160(FIG. 1). If in operation 410 it is determined that a search request isnot sent, control is passed to operation 420 and process 400 continues.If in operation 410 it is determined that a search request is sent,control is passed to operation 415 and process 400 continues.

The determination in operation 410 may be based on a process such as theprocess 200 (FIG. 2). The determination in operation 410 may be madebased on various criteria. For example, a URL may be compared to a listof search engine URLs. Information may be sent to a system associatedwith the alternate search system 130 (FIG. 1) which may examine theinformation to determine if it includes a search request. In at leastone embodiment, the search monitor 155 compares a parent of a URLobtained from the application program 150 to a list of a number of URLsto determine if a search request is sent.

In operation 420 a URL(s), a time stamp(s), and/or other information maybe recorded in a search monitor log. In at least one embodiment, thesearch monitor 155 (FIG. 1) may maintain such a log in memory or otherstorage media accessible from the user system 135. Some or allinformation of a search monitor log may be transmitted to the alternatesearch system 130 via the network 115. Information indicated in a searchmonitor log may include a unique identifier of the search monitor 155.The database 120 is updated. Control is passed to operation 405 andprocess 400 continues.

In operation 415 a message(s) is transmitted from a system such as theuser system 135 (FIG. 1) to a system such as the alternate search system130. In at least one embodiment, a request which is related to a searchrequest submitted by a user of the user system 135 to a system such asthe primary search system 160 is sent to the alternate search system130. Any or all elements of a search monitor record may be transmittedto the alternate search system 130 via the network 115. A transmittedmessage(s) may include one or more of a list of a number of URL's, timeinformation, a keyword(s), a category, a search query, information of anactivity(ies) of a user, information associated with a user system suchas location information or any other information which may be indicatedin a search monitor log. A message(s) may be received from the alternatesearch system 130 and/or the primary search system 160, and/or any otherdevice(s). The database 120 is updated. Control is passed to operation425 (FIG. 4) and process 400 continues.

In operation 425 a determination is made as to whether an alternatesearch result(s) is available. If in operation 425 it is determined thatan alternate search result(s) is not available, control is passed tooperation 430 and process 400 continues. If in operation 425 it isdetermined that an alternate search result is available, control ispassed to operation 435 and process 400 continues.

The determination in operation 425 may be made based on variouscriteria. In at least one embodiment, the determination may be madebased on content of a message(s) received from the alternate searchsystem 130 (FIG. 1) responsive to a message transmitted in operation415. A message transmitted by the alternate search system 130 may beexamined including relative to, for example, other result(s) todetermine if an alternate search result(s) is available. Alternately, amessage(s) may be received and/or analyzed from a device(s), such as thesearcher system 105 (FIG. 1), the primary search system 160, etc.Content of a message(s) received from the primary search system 160 maybe compared to content of a message(s) received from the alternatesearch system 130 to determine if an alternate search result(s) isavailable. For example, a message(s) from the alternate search system130 may indicate that a number of search results are available, or amessage(s) received from the primary search system 160 and a message(s)received from the alternate search system 130 may be processed toidentify one or more search result(s) which may be compared to determineif an alternate search result(s) is available. In at least oneembodiment, a search request may be transmitted to a guide selected torespond to the request, and receipt of a search result from a guide(s)may determine if a search result is available.

In operation 430 (FIG. 4) a URL(s), a time stamp(s), and/or otherinformation may be recorded in a search monitor log. Any or allinformation of a search monitor log may be transmitted to the alternatesearch system 130 via the network 115. Information in a search monitorlog may include a unique identifier of the search monitor 155. A searchmonitor log may include information determined based on a response(s)from the primary search system 160. For example, if a search result(s)is provided by the primary search system 160, it may be compared to asearch result(s) provided by the alternate search system 130.Information based on such a comparison which may have been used todetermine if an alternate search result(s) is available may be indicatedin a search monitor log. A search monitor log may include anyinformation within the scope of the embodiments herein. Information ofuser action(s) responsive to a message(s) received from the primarysearch system 160, and/or any other data presented to a user includingindependent of a result may be recorded in a search monitor log. Forexample, information viewed, time information, etc. may be recorded.Information of a search query, a search result(s) and user action(s) mayfor example be used to determine a rating of a primary search system.The database 120 is updated. Control is passed to operation 405 (FIG. 4)and process 400 continues.

In operation 435, an indication of an alternate search result(s) may bepresented to a user. The presentation of an alternate result ispreferably integrated into the user interface of the application program150. For example, a message interface such as the GUI 1500 illustratedin FIG. 15A may be presented. A process for presenting such anindication is further described herein below with respect to FIG. 16,FIG. 17 and FIG. 18. Any type of indication may be provided within thescope of the embodiments disclosed herein. Control is passed tooperation 440 and process 400 continues.

In operation 440 a determination is made as to whether a user accepts anoffer to view an alternate search result(s) indicated in operation 435.If in operation 440 it is determined that a user does not accept anoffer, control is passed to operation 445 and process 400 continues. Ifin operation 440 it is determined that a user does accept an offer,control is passed to operation 450 and process 400 continues.

The determination in operation 440 may be made based on variouscriteria. For example, a user action(s) such as activating an actionbutton in a GUI such as the GUI 1500 illustrated in FIG. 15A, the GUI1900 illustrated in FIG. 18, or the GUI 2000 illustrated in FIG. 19 mayindicate that a user accepts an offer, and/or selection of a searchresult(s) provided by a primary search system, a web page may indicatethat a user does not accept an offer, and/or the expiration of a timeinterval, and/or navigation to a different web page, etc. may indicatethat a user does not accept an offer.

In operation 445 (FIG. 4), a URL(s), a time stamp(s), and/or otherinformation may be added to a search monitor log. In at least oneembodiment, the search monitor 155 (FIG. 1) may maintain such a log inmemory and/or storage media accessible from the user system 135. Any orall information of a search monitor log may be transmitted to thealternate search system 130 via the network 115. In at least oneembodiment, an indication of user rejection of the offer in operation440 is recorded in a search monitor log, and/or transmitted to thealternate search system 130. A search monitor log may include anyinformation within the scope of the embodiments disclosed herein. Thealternate search system 130 may transmit a message(s) in response to amessage(s) transmitted from the user system 135. Such a message(s) mayalter a behavior of the search monitor 155. For example, the searchmonitor 155 action(s) may be modified or selectively customized so asnot to provide an offer to view an alternate search result(s) based onany condition(s), such as a keyword(s) and/or category (ies), etc.associated with a search request. Search monitor action(s) may bemodified to provide information of an incentive(s) for a user to utilizea service(s) of the alternate search service. Action(s) associated witha search monitor may be modified in any manner. The database 120 isupdated. Control is passed to operation 405 (FIG. 4) and process 400continues.

In operation 450 information of a search result(s) provided by thealternate search service 130 is provided. For example, the applicationprogram 150 such as a browser may be directed to a web page provided bythe alternate search system 130. A user may be presented with a searchresult(s) using an interface such as the GUI 1550 illustrated in FIG.15B and/or the GUI 1600 illustrated in FIG. 15C. Any interface,including a VoiceXML interface, a GUI, a touch-screen interface, an SMS,EMS, MMS, or other message, etc., may be presented to a user. Control ispassed to operation 455 and process 400

In operation 455, information including of user action(s) responsive toan alternate search result(s) presented to a user in operation 450 maybe obtained. For example, if a user clicks through a URL action controlof a search result, or if a user indicates an opinion(s) regarding asearch result(s), etc. the actions may be recorded. Action(s) of thesearch monitor 155 may be modified based on information of a useraction(s) obtained in operation 455. Information of a user action(s) maybe recorded in a search monitor log. Information of user actions may betransmitted to the alternate search system 130 (FIG. 1). A rating(s) ofa search result(s) may be modified based on user actions associated withthe search result(s). The database 120 is updated. Control is passed tooperation 405 and process 400 continues.

As illustrated in FIG. 5, a process 500 for providing a search result(s)to a user system is provided. The process 500 may be operative on thealternate search system 130 (FIG. 1).

In operation 505, a determination is made as to whether a search queryis received. If in operation 505 it is determined that a search query isnot received, control remains with operation 505 and process 500continues. If in operation 505 it is determined that a search query isreceived, control is passed to operation 510 and process 500 continues.

In operation 510 a determination is made as to whether a query isgenerated by a search monitor such as the search monitor 155 (FIG. 1).If in operation 510 (FIG. 5) it is determined that a query is notgenerated by a search monitor, control is passed to operation 515 andprocess 500 continues. If in operation 510 it is determined that a queryis generated by a search monitor, control is passed to operation 520 andprocess 500 continues.

The determination in operation 510 may be made based on variouscriteria. In at least one embodiment, determination is made as towhether a message received in operation 505 includes an indicator that asearch request is generated by a search monitor. For example, a uniqueidentifier of a search monitor may be included in a message transmittedfrom the user system 135 (FIG. 1) by the search monitor 155. Anyindication that a search request is generated by a search monitor may beutilized within the scope of the embodiments disclosed herein.

In operation 515 an information search is performed by the alternatesearch system 130. Control is passed to operation 505 and process 500continues.

In operation 520 a response is transmitted to a search monitor such asthe search monitor 155 (FIG. 1) which may be resident on a user systemsuch as the user system 135. In at least one embodiment, a message maybe examined to determine a primary search engine to which a search querywas submitted, and content(s) of a search query. A search result(s)responsive to a search request may be obtained in various ways. In atleast one embodiment, an information search may be performed by thealternate search system 130 (FIG. 1). In at least one embodiment, asearch query may be submitted to a primary search system(s) such as theprimary search system 160 (FIG. 1). A selection may be made from amongsearch result(s) and the selected result may be returned to a searchmonitor. The selection may be based on various criteria. In at least oneembodiment, a search result(s) produced by a human searcher(s) may beselected. A search result(s) to be returned to a search monitor may becompared to a search result(s) produced by a primary search engine todetermine if it is eligible to be returned to a search monitor. Forexample, if a search result(s) is included in a message received fromthe primary search system 160, it may not be eligible to be returned toa search monitor. If no search result(s) are selected to be returned toa search monitor, a message(s) indicating such a status may betransmitted to a search monitor. Information of a user query, a primarysearch engine, etc. may be recorded in the database 120 (FIG. 1). Suchinformation may be used for any purpose by the system. For example, aquery may be submitted to a human searcher(s) to determine if a superiorsearch result(s) may be obtained responsive to a query(ies). A processfor selecting a search result(s) and/or a searcher(s) responsive to asearch query is further described herein with respect to FIG. 13 andFIG. 14. The database 120 is updated. Control is passed to operation 525and process 500 continues.

In operation 525 a determination is made as to whether a user accepts anoption to review an alternate search result(s). If in operation 525 itis determined that a user does not accept an option to view an alternatesearch result(s) control is passed to operation 530 and process 500continues. If in operation 525 it is determined that a user accepts anoption to review an alternate search result(s) control is passed tooperation 535 and process 500 continues.

The determination in operation 525 may be made based on variouscriteria. In at least one embodiment, a message is received at thealternate search system 130 (FIG. 1) which indicates that a user does ordoes not accept an option to review an alternate search result(s). Thedetermination in operation 525 may be based at least in part oninformation indicated in the database 120. Any information may be usedto determine user acceptance. For example, a message may be receivedfrom a search monitor such as the search monitor 155.

In operation 530 a user action(s) may be recorded. For example, a usermay decline to review an alternate search result(s), select a searchresult(s) provided by a search engine(s) such as the primary searchengine 160 (FIG. 1), and/or may allow a time interval to pass, etc. Suchinformation may be recorded and/or transmitted by a search monitor suchas the search monitor 155 to the alternate search system 130. Anyinformation of a user action(s) may be obtained and/or recorded inoperation 530. In at least one embodiment, user rejection of an optionto review a search result(s) may be used to modify a ranking(s) orrating(s) of a search result(s) and/or a searcher(s) associated with asearch result(s). A message(s) may be transmitted to the user system135. For example, information may be transmitted which may alter anaction(s) of the search monitor 155. The database 120 is updated.Control is passed to operation 505 and process 500 continues.

In operation 535 information of a search result(s) may be presented to auser(s). A GUI such as the GUI 1550 illustrated in FIG. 15B may bepresented to a user. Alternately a search result(s) may be presented toa user using a VoiceXML menu, a touch-screen interface, an SMS, EMS,MMS, or other message, etc., or any other interface(s). Control ispassed to operation 540 and process 500 continues.

In operation 540 a determination is made as to whether a user accepts asearch result(s) presented in operation 535. If in operation 540 it isdetermined that a user does not accept a search result(s), control ispassed to operation 545 and process 500 continues. If in operation 540it is determined that a user accepts a search result(s) control ispassed to operation 550 and process 500 continues.

The determination in operation 540 may be made based on variouscriteria. In at least one embodiment, a user ‘clicking on’ and/orviewing a search result(s) associated with information of a searchresult(s) presented in operation 535 is used to determine whether a useraccepts a search result(s). A user may provide a rating(s) of a searchresult(s) presented in operation 535 which may indicate acceptance of asearch result(s). In at least one embodiment, time spent by a userviewing a search result(s), clicking through a link associated with asearch result(s), or clicking through an advertisement associated with asearch result(s) may be used determine user acceptance and/or arating(s) of a search result(s).

In operation 545 user response(s) to a search result(s) presented inoperation 535 may be recorded in the database 120 (FIG. 1) and/or asearch monitor log. For example, information of user actions may betransmitted to the user system 135 and may be recorded at the usersystem by for example, the search monitor 155. Alternately, informationof a user action(s) may be monitored by the search monitor 155, andtransmitted to the alternate search system 130. Information of a userrejection of a search result(s) may affect a ranking and/or rating(s) ofa search result(s), a searcher(s) and/or other information indicated inthe database 120. In at least one embodiment, information of useracceptance of a search result(s) may be used to determine an action(s)of a search monitor. For example, a user who has consistently accepted aresult(s) offered by a search monitor may be presented with an option tomake the alternate search system 130 his or her default search engine.Alternately, a user who has rejected a search result(s) may not bepresented with an option to review a search result(s) associated with akeyword(s) and/or category(ies) and/or other information associated witha query. A user might be offered an incentive to review a searchresult(s) indicated by the alternate search system 130. In at least oneembodiment, if a search result is rejected by a user, the search querymay be transmitted to a guide who may perform a search responsive to thequery. The database 120 is updated. Control is passed to operation 505and process 500 continues.

In operation 550 information of a search result(s) accepted in operation540 may be presented to a user. A user may be requested to rate a searchresult(s). For example, a GUI such as the GUI 1600 illustrated in FIG.15C may be presented to a user in order to obtain a rating(s) of asearch result(s). Information of user acceptance of a search result(s)may be used to modify a rating(s) and/or ranking(s) associated with asearch result(s) and/or a searcher(s). For example, a searcher whoprovided a search result which is accepted, selected and/or rated may becompensated. Likewise a search result which is accepted may have ahigher ranking and/or rating based on user acceptance of a searchresult(s). Information of user acceptance may be recorded in thedatabase 120, and/or transmitted to a user device, such as the usersystem 135, where it may be recorded in a search monitor log. Thedatabase 120 is updated. Control is passed to operation 505 and process500 continues.

User ratings of a search result(s) may be determined in various ways.For example, user click-through, or other user actions may be monitoredbased on keystrokes and/or any information which may be obtained by thesearch monitor 155. A user may be requested to provide active ratings ofa search result(s). For example, in addition to a search result(s), auser may be presented with one or more rating controls which may be usedto indicate user opinion regarding a search result(s) as is furtherdescribed herein with respect to FIG. 15C.

As previously described, the search monitor may be implemented as anextension. In such an embodiment, information may be exchanged betweenthe search monitor 155 and the alternate search system 130 in order toupdate information included in the database 120 based upon anyinformation which may be indicated in the user system 135. Likewise,information indicated in a user system such as the user system 135 maybe modified and/or updated based on information indicated in thedatabase 120. Operation(s) included in the method 400 and/or the method500 may be performed by software operating on any device(s) in thesystem 100.

As illustrated in FIG. 6, a sample of a search monitor log record 600,of which one or more may be associated with or resident in the database120 (FIG. 1) and/or in the user system 135 is provided. The searchmonitor log record may include a search monitor identifier (ID) field605, a URL list field 610, a user actions field 615, a time stamp field620, and an auxiliary information field 625.

A search monitor log record 600 may be created in various ways. In atleast one embodiment, a search monitor log record(s) is created by thesearch monitor 155 and may be recorded in any suitable memory device(s).In a preferred embodiment, a search monitor log is maintained in theuser system 135 and in the database 120 (FIG. 1). Any informationindicated in a search monitor log may be transmitted to the alternatesearch system 130 and/or the user system 135 at any time.

The search monitor ID field 605 serves to identify a search monitorrecord associated with a search monitor from the search monitor recordassociated with another search monitor. The search monitor ID field 605preferably contains a unique identifier of a search monitor, which ispreferably used consistently. For example, in at least one embodiment,the search monitor ID field 605 can include a randomly generatednumerical code, and/or a text string indicating the ID of a searchmonitor. A unique identifier may be assigned to a search monitor when itis distributed to a user, may be assigned by the alternate search system130 when a search monitor communicates with the alternate search system130, or may be assigned by any other suitable means. Using the examplein FIG. 6, ‘chachahelper 1000’ is the search monitor ID associated withthe search monitor record 600. In at least one embodiment, the searchmonitor ID is based on a random number.

The URL list field 610 may include a URL(s) entered or otherwiseindicated by a user. The URL list field may be used to maintain a recordof any or all URL's visited by a user system which has a search monitorsuch as the search monitor 155 (FIG. 1) operative on the user system. Inat least one embodiment, URLs relating to search activities may berecorded in the URL list field 610. Alternately, the URL list field 610may include any URL(s) visited by a user. Continuing with the example inFIG. 6, the URL ‘http://www.website1.com’ and ‘http://www.dogpile.com’have been recorded in the URL list field 610. While only two URL's areillustrated in the example, any number of URL's may be recorded in theURL list field 610. The URL list field 610 may include any or allelements of a URL entered by a user. Any information regarding activityassociated with an application such as the application program 150 maybe recorded in a search monitor log record. While a URL has been usedfor the purposes of illustration information regarding any type ofmessage which may be used to submit a search request may be recorded inthe URL list field 610. In at least one embodiment, the URL list field610 and the time stamp field 620 may be linked by for example a pointer.

The user actions field 615 may include information of a user action(s)which is obtained using for example the search monitor 155. Suchinformation may include keystrokes, navigation commands, and/or anyother information of a user action(s). For example, user actions relatedto a web page which may contain a search result(s) provided by theprimary search system 160 may be logged and recorded in the searchmonitor record 600. Any information which may be made accessible to anextension and/or a service such as the search monitor may be recorded.Using the example illustrated in FIG. 6, the user actions ‘select bookmark ‘http://www.dogpile.com’’, ‘type ‘who is brown leaves?’ in searchbox’, ‘left click on ‘search’ button’, ‘right click on ‘Operation BrownLeaves’, ‘select ‘open in new tab’’ are recorded in the user actionsfield. Any or all user actions may be recorded in the user actions field615. In at least one embodiment, the user actions field 615 and the timestamp field 620 may be linked by for example a pointer.

The time stamp field 620 may include information of time which isrelated to any or all information included in a search monitor log. Forexample, a date and time associated with a URL being visited may berecorded in the time stamp field 620. In at least one embodiment, theURL list field 610, the user actions field 615, and the time stamp field620 are linked by for example a pointer. Information of user action(s)such as time spent viewing information of a URL, link(s) followed,advertisements, etc. may be recorded. Continuing with the exampleillustrated in FIG. 6, the time information ‘22.15.06.12.08.2007’ isassociated with the URL ‘http://www.website1.com’ and the timeinformation ‘22.17.10.12.08.2007’ is associated with the URL‘http://www.dogpile.com’. Likewise, the time information‘22.16.45.12.08.2007’ is associated with the user action ‘select bookmark ‘http://www.dogpile.com’’, the time information‘22.16.52.12.08.2007’ is associated with the user action ‘type ‘who isbrown leaves?’ in search box', the time information‘22.17.09.12.08.2007’ is associated with the user action ‘left click on‘search’ button’, the time information ‘22.17.35.12.08.2007’ isassociated with the user action ‘right click on ‘Operation Brownleaves’, and the time information ‘22.17.36.12.08.2007’ is associatedwith the user action ‘select ‘open in new tab’’. The timestampinformation, URL's, and user actions illustrated are exemplary and nolimitation is implied thereby.

The auxiliary information field 625 may include any informationindicated in a user system such as the user system 135 (FIG. 1). Forexample, a list of bookmarks and folder labels associated with abookmark(s) may be included in the auxiliary information field 625.Using the example illustrated in FIG. 6, the bookmarks ‘www.space.com’,and ‘www.science.com’ and the folder name ‘science sites’ are includedin the auxiliary information field 625. Such information may be used toenhance the relevance of a search result(s) and/or other informationprovided by the alternate search system 130 responsive to a userquery(ies). In at least one embodiment, information of a default searchengine service may be obtained from an application such as a browser andrecorded in the auxiliary information field 625

The search monitor log record 600 may comprise additional fields withinthe scope of the disclosure herein. Any information accessible by thesearch monitor 155 and/or indicated in the database 120 may be includedin a search monitor log. For example, information of a primary searchengine utilized by a user, information of a keyword(s), category(ies) orother information associated with a search monitor, information of userpurchase transactions, advertisements viewed, a search history, and/orany other information may be included in a search monitor log. Theinformation contents illustrated in the search monitor log record 600are exemplary and no limitation is implied thereby. Various ways ofrepresenting such information which are well known in the relevant artmay be utilized without departing from the spirit and scope of theembodiments disclosed herein.

As illustrated in FIG. 7, a sample of a search monitor user record 700,of which one or more may be associated with or resident in the database120 (FIG. 1) and/or in the user system 135 is provided. The searchmonitor user record 700 may include a search monitor identifier (ID)field 705, a query ID field 710, a searcher ID field 715, a searchengine field 720, and a rating field 725.

The search monitor ID field 705 serves to identify a search monitor userrecord associated with a search monitor from the search monitor userrecord associated with another search monitor. The search monitor IDfield 705 preferably contains a unique identifier of a search monitor,which is preferably used consistently. For example, in at least oneembodiment, the search monitor ID field 705 can include a randomlygenerated numerical code, and/or a text string indicating the ID of thesearch monitor. A unique identifier may be assigned to a search monitorwhen it is distributed to a user, may be assigned by the alternatesearch system 130 when a search monitor communicates with the alternatesearch system 130, or may be assigned any other suitable means. Usingthe example in FIG. 7, ‘chachahelper 1000’ is the search monitor IDassociated with the search monitor user record 700. In at least oneembodiment, the search monitor ID is based on a random number.

The query ID field 710 may include an identifier of a search query(ies)submitted by a search monitor such as the search monitor 155 (FIG. 1).The query ID field 710 (FIG. 7) may include an indicator of one or morequeries submitted to the alternate search system 130 (FIG. 1).Information indicated in the query ID field 710 may be used for anypurpose. In at least one embodiment, content(s) of the query ID field710 may be used to provide an indicator that a search result(s) for aquery has been produced. In at least one embodiment, informationindicated in the query ID field 710 may be used to provide searchhistory functionality to a user of a search monitor, which may be basedon any information indicated in the database 120, and/or the user system135. Continuing with the example in FIG. 7, the query ID ‘who is brownleaves?’ and the query ID ‘what is the best Italian restaurant indowntown Chicago?’ have been associated with the search monitor userrecord 700, which may indicate that ‘chachahelper 1000’ has submittedthe query ‘who is brown leaves?’ and the query ‘what is the best Italianrestaurant in downtown Chicago?’.

The searcher ID field 715 may include an identifier(s) of a searcher(s)who may have provided a search result(s) to a user of a search monitor.The searcher ID field 715 may indicate that a search result(s)associated with a searcher indicated in the searcher ID field 715 hasbeen selected and/or rated by a user of a search monitor such as thesearch monitor 155. The searcher ID field 715 may indicate a searcher(s)for various reasons, such as a searcher being eligible to respond to aquery, a searcher being a highest ranking searcher available to respondto a query, etc. In at least one embodiment, a rating may be associatedwith a searcher and a search monitor. Using the example illustrated inFIG. 7 the searchers ‘Paula 1126’ and ‘Sergei1 1000’ have beenassociated with the search monitor record 700. In at least oneembodiment, the query ID field 710 and the searcher ID field 715 arelinked by for example a pointer.

The search engine field 720 may include an indicator of a searchengine(s) which may be utilized by a user of a search monitor such asthe search monitor 155. One or more search engines may be indicated inthe search engine field 720. Information in the search engine field 720may be utilized for any purpose. In at least one embodiment, informationindicated in a search engine field 720 may be used to rank a searchresult(s), or other information presented to a user. Informationindicated in the search engine field 720 may be utilized to analyze acompetitive search engine(s) to the alternate search system 130. Aquery(ies) may be submitted to a search system based at least in part oninformation indicated in the search engine field 720. Using the exampleillustrated in FIG. 7, the search engines ‘www.dogpile.com’ and‘www.ask.com’ are associated with the search monitor user record 700.This may indicate that a user of a search monitor ‘chachahelper 1000’has designated ‘www.ask.com’ and/or ‘www.dogpile.com’ as a preferredsearch engine.

The rating field 725 may include information of a rating(s) provided bya user(s) of a search monitor such as the search monitor 155. One ormore rating(s) and/or type(s) of rating(s) may be indicated in therating field 725. In at least one embodiment, a rating may indicate auser rating of a search result(s) provided responsive to a query(ies).For example, a relevance score such as a value between zero and ten maybe indicated and/or a rating of a result versus a user target related toa characteristic may be indicated, a user acceptance of a result(s)(e.g., yes/no) may be indicated, etc. Using the example in FIG. 7, therating ‘9’ and ‘A-12’ are associated with the search monitor user‘chachahelper 1000’. This may for example indicate that the searchengine ‘www.dogpile.com’ has a ranking of ‘9’ based on ratings providedby ‘chachahelper 1000’, and/or that the search engine ‘www.ask.com’ hasa rating ‘A-12’.

The search monitor user record 700 may comprise additional fields withinthe scope of the disclosure herein. Any information accessible by thesearch monitor 155 and/or indicated in the database 120 may be includedin a search monitor user record(s). The information contents illustratedin the search monitor user record 700 are exemplary and no limitation isimplied thereby. Various ways of representing such information which arewell known in the relevant art may be utilized without departing fromthe spirit and scope of the embodiments disclosed herein.

As illustrated in FIG. 8, a sample of a searcher record 800, of whichone or more may be associated with or resident in the database 120(FIG. 1) and/or in the user system 135 is provided. The searcher record800 may include a searcher identifier (ID) field 805, a keyword ID field810, a category ID field 815, a result ID field 820, a query ID field825, and a searcher rating field 830.

The searcher ID field 805 serves to identify a searcher recordassociated with a searcher or guide from the searcher record associatedwith another searcher. The searcher ID field 805 preferably contains aunique identifier of a searcher which is preferably used consistently.For example, in at least one embodiment, the searcher ID field 805 caninclude a randomly generated numerical code, and/or a text stringindicating the ID of the searcher. A unique identifier may be assignedto a searcher when the searcher is registered with the alternate searchsystem 130. Using the example in FIG. 8, ‘Paula 1126’ is the searcher IDassociated with the searcher record 800. In at least one embodiment, thesearcher ID is based on a random number. Other identifiers of a searchermay be utilized without departing from the spirit and scope of theembodiments herein.

The keyword ID field 810 may include an identifier of a keyword(s)associated with a searcher. A keyword(s) may be associated with asearcher in various ways. In at least one embodiment, a keyword(s) isassociated with a searcher (or guide) during a registration process. Asearcher (or guide) may elect to be associated with a keyword. Thekeyword ID field 810 may include an indicator of one or more keyword(s)indicated in the database 120 (FIG. 1). Information indicated in thekeyword ID field 810 may be used for any purpose. In at least oneembodiment, content(s) of the keyword ID field 810 may be used select asearcher(s), a search result(s) and/or other information associated witha keyword(s). Continuing with the example in FIG. 8, the keyword ‘brownleaves’, the keyword ‘the best site for the Green Party’, and thekeyword ‘Whales at Sea World’ have been associated with the searcher‘Paula 1126’ which may indicate that ‘Paula 1126’ has registered toaccept search requests associated with the keyword ‘brown leaves’, thekeyword ‘the best site for the Green Party’, and the keyword ‘Whales atSea World’.

The category ID field 815 may include an identifier of a category(ies)associated with a searcher. A category(ies) may be associated with asearcher in various ways. In at least one embodiment, a category(ies) isassociated with a searcher (or guide) during a registration process. Asearcher (or guide) may elect to be associated with a category. Thecategory ID field 815 may include an indicator of one or morecategory(ies) in the database 120 (FIG. 1). Information indicated in thecategory ID field 815 may be used for any purpose. In at least oneembodiment, content(s) of the category ID field 815 may be used select asearcher(s), a search result(s), and/or other information associatedwith a category(ies). Continuing with the example in FIG. 8, thecategory ‘Arts>Music’ and the category ‘Politics>Charity’ have beenassociated with the searcher ‘Paula 1126’, which may indicate that‘Paula 1126’ has registered to accept search requests associated withthe category ‘Arts>Music’ and the category ‘Politics>Charity’

The result ID field 820 may include an identifier of a search result(s)or result(s) associated with a searcher. A search result(s) may beassociated with a searcher in various ways. In at least one embodiment,a result(s) is associated with a guide if a search result is provided bya guide responsive to a query. The result ID field 820 may include anindicator of one or more search result(s) indicated in the database 120(FIG. 1). Information indicated in the result ID field 820 may be usedfor any purpose. In at least one embodiment, content(s) of the result IDfield 820 may be used to select a searcher and/or a search result(s)associated with a searcher. Continuing with the example in FIG. 8, theresult ‘www.brownleaves.jp’, the result ‘www.getgreennow.org’ and theresult ‘www.freethewhales.net’ have been associated with the searcher‘Paula 1126’ which may indicate that ‘Paula 1126’ has provided theresult ‘www.brownleaves.jp’, the result ‘www.getgreennow.org’ and theresult ‘www.freethewhales.net’ responsive to a search request.

The query ID field 825 includes an identifier of a query(ies) associatedwith a searcher. A query(ies) may be associated with a searcher invarious ways. In at least one embodiment, a query(ies) is associatedwith a searcher (or guide) if a search result is provided by thesearcher (or guide) responsive to a query. The query ID field 825 mayinclude an indicator of one or more query(ies) indicated in the database120 (FIG. 1). Information indicated in the query ID field 825 may beused for any purpose. In at least one embodiment, content(s) of thequery ID field 825 may be used select a searcher and/or a searchresult(s) associated with a searcher. Continuing with the example inFIG. 8, the query ‘who is brown leaves?’, the query ‘what is the bestsite for the Green Party?’ and the query ‘how can I help whales atSeaWorld?’ have been associated with the searcher ‘Paula 1126’, whichmay indicate that the searcher ‘Paula 1126’ has provided a searchresult(s) responsive to the query ‘who is brown leaves?’, the query‘what is the best site for the Green Party?’ and the query ‘how can Ihelp whales at SeaWorld?’

The searcher rating field 830 includes information of a rating(s)associated with a searcher or guide. One or more rating(s) and/ortype(s) of rating(s) may be indicated in the rating field 830. In atleast one embodiment, a rating may indicate a rating of a searcherrelated to a keyword(s) and/or a category(ies). A rating may be any typeof information which indicates a rating of an item such as a searchresult, an advertisement, a searcher, etc. Rating information may berepresented in any way. Continuing with the example in FIG. 8, theratings 1;3;2 have been associated with the searcher ‘Paula 1126’, whichmay indicate for example that the search result ‘www.brownleaves.jp’ isthe top ranked result associated with the query ‘who is brown leaves?’,that ‘www.getgreennow.org’ is the third ranked search result associatedwith the query ‘what is the best sit for the Green Party, and that‘www.freethewales.net’ is the second ranked search result associatedwith the query ‘how can I help whales at SeaWorld?’

A searcher record such as the searcher record 800 may compriseadditional fields within the scope of the disclosure herein. Anyinformation accessible by the search monitor 155 and/or indicated in thedatabase 120 may be included in a searcher record(s). The informationcontents illustrated in the searcher record 800 are exemplary and nolimitation is implied thereby. Various ways of representing suchinformation which are well known in the relevant art may be utilizedwithout departing from the spirit and scope of the embodiments disclosedherein.

As illustrated in FIG. 9, a sample of a query record 900, of which oneor more may be associated with or resident in the database 120 (FIG. 1)and/or in the user system 135 is provided. The query record 900 mayinclude a query identifier (ID) field 905, a keyword ID field 910, acategory ID field 915, a result ID field 920, a user ID field 925, asearcher ID field 930 and a search engine ID field 935.

The query ID field 905 serves to identify a query record associated witha search query or request from the query record associated with anothersearch query. The query ID field 905 preferably contains a uniqueidentifier of a search query which is preferably used consistently. Forexample, in at least one embodiment, the query ID field 905 can includea randomly generated numerical code, and/or a text string indicating theID of the query. A unique identifier may be assigned to a search querywhen the query is received by the alternate search system 130. Using theexample in FIG. 9, ‘who is brown leaves?’ is the query ID associatedwith the query record 900. In at least one embodiment, the query ID isbased on a random number. Other identifiers may be utilized withoutdeparting from the spirit and scope of the embodiments herein.

The keyword ID field 910 may include an identifier of a keyword(s)associated with a query. A keyword(s) may be associated with a searchquery in various ways. In at least one embodiment, a keyword(s) isassociated with a query when a query is received by the alternate searchsystem 130. A keyword(s) may be associated with a query automaticallyand/or using the assistance of a guide(s) or human assistant(s). Thekeyword ID field 910 may include an indicator of one or more keyword(s)indicated in the database 120 (FIG. 1). Information indicated in thekeyword ID field 910 may be used for any purpose. In at least oneembodiment, content(s) of the keyword ID field 910 may be used to selecta searcher, a search result(s), an advertisement and/or otherinformation responsive to a query or search request. Continuing with theexample in FIG. 9, the keyword ‘brown’, the keyword ‘leaves’, and thekeyword ‘brown leaves’ have been associated with the query ‘who is brownleaves?’

The category ID field 915 may include an identifier of a category(ies)associated with a query. A category(ies) may be associated with a queryor search request automatically and/or using the assistance of a guideor searcher. The category ID field 915 may include an indicator of oneor more category(ies) indicated in the database 120 (FIG. 1).Information indicated in the category ID field 915 may be used for anypurpose. In at least one embodiment, content of the category ID field915 may be used to select a searcher, a search result(s), anadvertisement(s) and/or other information responsive to a query.Continuing with the example in FIG. 9, the category ‘Home>Gardening’ andthe category ‘Arts>Music’ have been associated with the query ‘who isbrown leaves?’

The result ID field 920 may include an identifier of a search result(s)associated with a query. A search result(s) may be associated with aquery in various ways. In at least one embodiment, a search result(s) isassociated with a query if a search result(s) is provided by a searcher(or guide) responsive to a query. In at least one embodiment, a searchresult(s) may be associated with a query if the search result isprovided by a search service such as the primary search system 160. Theresult ID field 920 may include an identifier of one or more searchresult(s) indicated in the database 120 (FIG. 1). Information indicatedin the result ID field 920 may be used for any purpose. In at least oneembodiment, content of the result ID field 920 may be used to select asearch result(s), a searcher, and/or other information responsive to aquery.

For example, continuing with the example in FIG. 9, the search result‘www.brownleaves.jp’, the search result ‘www.science.org\leafscience’,the search result ‘www.amazon.com\brownleaves’ and the search result‘www.gardening.com’ have been associated with the query ‘who is brownleaves?’. While a URL has been used as an identifier of a searchresult(s) in FIG. 9 for the purposes of illustration, no limitation isimplied thereby. A search result(s) may include any type(s) ofinformation which might be provided to a user responsive to a searchrequest. For example, a search result(s) might include text, images,audio and/or any type(s) of media or content which may be provided to auser(s). In at least one embodiment, a rating and/or ranking of a searchresult(s) associated with a query may be indicated in a query record.For example, if a search result is provided by a guide, and is alsoprovided by an automated search system such as the primary search system160, the search result may have a low rating, or if a guide(s)associated with a category associated with a query have voted that asearch result(s) is superior to other search results associated with aquery, the search result may have a high rating associated with thecategory and the query.

The user ID field 925 may include an identifier of a user(s) associatedwith a query. A user(s) may be associated with a query in various ways.In at least one embodiment, a user(s) are associated with a query if auser submits the query to the alternate search system 130. The user IDfield 925 may include an indicator of one or more user(s) indicated inthe database 120. Information indicated in the user ID field 925 may beused for any purpose. In at least one embodiment, content of the user IDfield 925 may be used to select a searcher and/or a search result(s)associated with a query. For example, a searcher who has produced asearch result(s) which received a high rating from a user(s) may beselected to respond to a future query associated with the user. Suchselection may for example be based on a keyword(s) and/or category(ies)associated with a query and a guide(s). Continuing with the example inFIG. 9, the user ID ‘chachahelper 1000’ has been associated with thequery ‘who is brown leaves?’ which may indicate that a user system whichincludes the search monitor ‘chachahelper 1000’ has submitted the query‘who is brown leaves?’ to the alternate search system 130. In at leastone embodiment, if a new search result(s) is provided associated with aquery, any or all users identified in the user ID field 920 may benotified of the new search result(s).

The searcher ID field 930 may include an identifier of a searcher(s)associated with a query. A searcher(s) may be associated with a query invarious ways. In at least one embodiment, a searcher(s) is associatedwith a query if a search result is provided by a searcher responsive tothe query. The searcher ID field 930 may include an indicator of one ormore searcher(s) indicated in the database 120 (FIG. 1). Informationindicated in the searcher ID field 930 may be used for any purpose. Inat least one embodiment, content of the searcher ID field 930 may beused select a searcher(s), a search result(s) associated with asearcher(s), and/or other information responsive to a query. Forexample, if a searcher has provided a highly rated search resultassociated with a previous query associated with a user, the searchermay have a higher rating associated with a new query submitted by theuser. Continuing with the example in FIG. 9, the searcher ID ‘Paula1126’ and the searcher ID ‘TomC 1023’ have been associated with thequery ‘who is brown leaves?’ which may indicate that the searcher ‘Paula1126’ and ‘TomC 1023’ have provided a number of search resultsresponsive to the query ‘who is brown leaves?’.

The search engine ID field 935 may include an identifier of a searchengine(s) associated with a query. A search engine(s) may be associatedwith a query in various ways. In at least one embodiment, a searchengine(s) is associated with a query if a search result is provided by asearch engine responsive to a search request. The search engine ID field935 may include an indicator of one or more search engine(s) indicatedin the database 120 (FIG. 1). Information indicated in the search engineID field 935 may be used for any purpose. In at least one embodiment,content of the search engine ID field 935 may be used select a searcher,a search result(s), an advertisement(s) and/or other informationresponsive to a query. For example, if a search engine(s) is associatedwith a query, a search result(s) provided by a guide that is alsoprovided by the search engine(s) may have a low rating associated withthe query. Continuing with the example in FIG. 9, the search engine ID‘www.dogpile.com’ has been associated with the query ‘who is brownleaves?’

In at least one embodiment, the results ID field 920 and the searcher IDfield 930 and the search engine ID field 935 are linked by for example apointer. Using the example illustrated in FIG. 9, the searcher ‘Paula1126’ may be associated with the search result ‘www.brownleaves.jp’, thesearcher ‘TomC 1023’ may be associated with the search result‘www.science.org\leafscience’, and the search engine ‘www.dogpile.com’may be associated with the search results ‘www.amazon.com\brownleaves’and ‘www.gardening.com’. In at least one embodiment, if a searchresult(s) is associated with a search engine, the search result(s) maybe excluded from consideration as an alternate search result(s) whichmay be presented to a user using the search monitor 155 (FIG. 1).

A query record such as the query record 900 may comprise additionalfields within the scope of the disclosure herein. Any informationaccessible by the search monitor 155 and/or indicated in the database120 may be included in a query record(s). The information contentsillustrated in the query record 900 are exemplary and no limitation isimplied thereby. Various ways of representing such information which arewell known in the relevant art may be utilized without departing fromthe spirit and scope of the embodiments disclosed herein.

As illustrated in FIG. 10, a sample of a keyword record 1000, of whichone or more may be associated with or resident in the database 120(FIG. 1) is provided. The keyword record 1000 may include a keywordidentifier (ID) field 1005, a category ID field 1010, a searcher IDfield 1015, a category rating field 1020, and a searcher rating field1025.

A keyword record may be created and/or modified in various ways. Forexample, a human searcher (or guide) may associate a keyword of a querysubmitted by a user with one or more categories, which may affect therating and/or ranking of a category associated with the keyword(s).Likewise, a searcher may elect to be associated with a keyword(s) and/orcategory(ies), which may cause a searcher ID to be added to a keywordrecord. A keyword record may be created and/or modified in any waywithin the scope of this disclosure. For example, a keyword record(s)may be created and/or modified using a database dump from an externaldatabase. For example, a database such as artist information and musicgenre might be imported and various type(s) of item(s) such as aguide(s), an advertisement(s), etc. might be associated with the artistnames as keyword(s) and the musical genres as category(ies). Likewiseinformation obtained by processing of electronic media might be used tocreate a keyword and/or category record(s). For example, a guide mightidentify documents, web pages, and/or other media which might be indexedusing an indexing functionality such as Lucene which might identify akeyword(s) and/or a category(ies) which might be associated with anynumber of searchers or guides. A keyword record(s) might be createdbased on actions of a person(s). For example, a guide(s) and/or auser(s) may participate in an activity such as a game, purchasing ofitem(s), a test(s), etc. which might provide information of and/orrating(s) of a keyword(s), category(ies) and/or other information.

The keyword ID field 1005 preferably includes a unique identifier of akeyword, which is preferably used consistently. In at least oneembodiment, the keyword ID field 1005 can include a randomly generatednumerical code, and/or a text string indicating the content of akeyword. Other identifiers may be utilized without departing from thespirit and scope of the embodiments herein. A unique identifier may beassigned to a keyword when it is entered into the database 120 (FIG. 1).Using the example in FIG. 10, ‘brown leaves’ is the keyword IDassociated with the keyword record 1000. In at least one embodiment, thekeyword ID is based on a combination of a keyword and a categorizationassociated with a keyword.

The category ID field 1010 may include information of a category(ies) ortaxonomy branch associated with a keyword. A person may select acategory(ies) which is associated with a keyword. A category may beassociated with a keyword in any way. A category may be associated witha keyword based on a selection by a guide(s) responsive to a searchrequest(s) which include the keyword. For example, a searcher (or guide)may associate a category(ies) with a query or search request which maycause the category(ies) to be associated with a keyword(s) of the searchrequest. Using the example illustrated in FIG. 10, the category‘Home>Gardening’ and the category ‘Arts>Music’ are associated with thekeyword ‘brown leaves’. In at least one embodiment, the category IDfield 1010 is linked to the category rating field 1020 by for example apointer.

The searcher ID field 1015 may include information of a searcher orguide associated with a keyword and/or a category. Using the example inFIG. 10, the guides ‘TomC 1023’, ‘Sergei1 1000’ and ‘Paula 1126’ areassociated with the keyword ‘brown leaves’. The searcher ID field 1015may contain information associated with one or more guides which may beused to obtain information associated with the guide(s) from a record(s)such as the searcher record 800 (FIG. 8). In at least one embodiment,the searcher ID field 1015 is linked to the searcher rating field 1025by for example a pointer.

The category rating field 1020 may include information of a rating(s)and/or ranking(s) of a category associated with a keyword. The contentof the category rating field 1020 may be used to rank a category(ies)associated with a keyword. A category rating and/or ranking may begenerated and/or modified in any manner. In at least one embodiment, arating of a category associated with a keyword may be based on frequencyof use of a categorization by a guide(s), and/or voting by a guide(s)and/or other rating criteria. Using the example illustrated in FIG. 10,a ranking of ‘1’ is associated with the category ‘Home>Gardening’ andthe keyword ‘brown leaves’ and a ranking of ‘2’ is associated with thecategory ‘Arts>Music’ and the keyword ‘brown leaves’. This may indicatethat the category ‘Home>Gardening’ and/or a resource(s) associated with‘Home>Gardening’ may be more likely to produce a relevant searchresult(s) responsive to a query associated with the keyword ‘brownleaves’ than the category ‘Arts>Music’ and/or a resource(s) associatedwith ‘Arts>Music’ when associated with the keyword ‘brown leaves’.

The searcher rating field 1025 may include information of a rating(s)and/or ranking(s) associated with a searcher associated with a keyword.The content of the searcher rating field 1025 may be used to rank asearcher(s) associated with a keyword. A searcher rating(s) and/orranking(s) may be generated and/or modified in any manner. In at leastone embodiment, a rating of a searcher associated with a keyword may bebased on rating of a search result(s) produced by a guide for aquery(ies) associated with a keyword and/or a category(ies). A rating ofa search result(s) associated with a keyword and/or a category may begenerated and/or modified in any manner. In at least one embodiment, arating and/or ranking of a search result(s) may be based on a userrating(s) and/or voting by a guide(s) and/or other rating criteria.Various ways of rating and/or ranking a searcher (or guide) may beutilized within the scope of this disclosure. Continuing with theexample illustrated in FIG. 10, the guide ‘TomC 1023’ has a rating ‘1’,the guide ‘Sergei1 1000’ has a rating ‘3’, and the guide ‘Paula 1126’has a rating ‘2’ associated with the keyword ‘brown leaves’. This mayindicate that the guide ‘TomC 1023’ is the top ranked searcher, theguide ‘Paula 1126’ is the second ranked searcher, and the guide ‘Sergei11000’ is the third ranked searcher associated with the keyword ‘brownleaves’. If a search request or query is associated with the keyword‘brown leaves’, the searcher ‘TomC 1023’ may be more likely to beselected to handle the query.

A keyword record such as the keyword record 1000 may comprise additionalfields within the scope of the disclosure herein. Any informationaccessible by the search monitor 155 and/or indicated in the database120 may be included in a keyword record(s). The information contentsillustrated in the keyword record 1000 are exemplary and no limitationis implied thereby. Various ways of representing such information whichare well known in the relevant art may be utilized without departingfrom the spirit and scope of the embodiments disclosed herein.

As illustrated in FIG. 11, a sample of a category record 1100, of whichone or more may be associated with or resident in the database 120(FIG. 1) is provided. The category record 1100 may include a categoryidentifier (ID) field 1105, a searcher ID field 1110, and a searcherrating field 1115.

A category record may be created and/or modified by various means. Forexample, a human guide may associate a query submitted by a user withone or more categories, which may affect the content of a categoryrecord. A searcher may elect to be associated with a category(ies),which might modify the content of a category record. A category recordmay be created and/or modified by processing as described further hereinabove. A category record may be created and/or modified in any waywithin the scope of this disclosure.

The category ID field 1105 preferably includes a unique identifier of acategory, which is preferably used consistently. For example, in atleast one embodiment, the category ID field 1105 can include a randomlygenerated numerical code, and/or a text string indicating the content ofthe category or taxonomy branch. A unique identifier may be assigned toa category when it is entered into the database 120 (FIG. 1). Otheridentifiers may be utilized without departing from the spirit and scopeof the embodiments herein. Using the example in FIG. 11, ‘Arts>Music’ isthe category ID associated with the category record 1100.

The searcher ID field 1110 may include information of a searcher(s)associated with a category. Content of the searcher ID field 1110 may becreated and/or modified in various ways. For example, the content of thesearcher ID field 1110 may be modified by a searcher selecting a keywordand/or a category during and/or after registering as a guide with thealternate search system 130 (FIG. 1). Using the example illustrated inFIG. 11, the searchers ‘TomC 1023’, ‘Sergei1 1000’ and ‘Paula 1126’ areassociated with the category ‘Arts>Music’. The association of a searcherwith a category may be made using any method within the scope of thedisclosure herein. In at least one embodiment, the searcher ID field1110 and the searcher rating field 1115 are linked by for example apointer.

The searcher rating field 1115 may include information of a rating(s)and/or ranking(s) associated with a category and a guide(s). Thesearcher rating field 1115 may be used to rank a searcher(s) associatedwith a category. A searcher rating(s) may be generated and/or modifiedin any manner. In at least one embodiment, a rating of a searcher(s)associated with a category may be based on a rating(s) and/or ranking(s)of a search result(s) produced by a guide for a query(ies) associatedwith the category. A rating of a search result(s) associated with acategory(ies) may be generated and/or modified in various ways. In atleast one embodiment, a rating(s) of a search result(s) may be based ona user rating(s) and/or voting by a guide(s) and/or other ratingcriteria. For example, a rating of a searcher (or guide) associated witha category may be based on the average rating of all search resultsprovided by the guide for queries associated with the category. In sucha case, a user rating(s) and/or a rating(s) provided by other guide(s)may be used to determine a rating(s) of a guide(s) associated with acategory. Any method of rating and/or ranking a guide(s) may be utilizedwithin the scope of this disclosure.

Continuing with the example illustrated in FIG. 11, the guide ‘TomC1023’ has a rating ‘3’, the guide ‘Sergei1 1000’ has a rating ‘2’, andthe guide ‘Paula 1126’ has a rating ‘1’ associated with the category‘Arts>Music’. This may indicate that the guide ‘Paula 1126’ is the topranked searcher, the guide ‘Sergei1 1000’ is the second ranked searcher,and the guide ‘TomC 1023’ is the third ranked searcher associated withthe category ‘Arts>Music’. If a search request or query is associatedwith the category ‘Arts>Music’, the searcher ‘Paula 1126’ may be morelikely to be selected to respond to the query. As illustrated hereinabove, the ranking and/or rating of a searcher(s) and/or a searchresult(s) may be different depending on information associated with theranking(s) and/or rating(s) and a searcher(s) and/or a search result(s).Using the example above, the searcher(s) ‘TomC 1023’, ‘Sergei1 1000’,and ‘Paula 1126’ have a different ranking when associated with a keyword(e.g., the keyword ‘brown leaves’), and a category (e.g. the category‘Arts>Music’). Rating or ranking of a guide(s) and/or a search result(s)and/or any other item such as an advertisement(s), a search resource,etc. when associated with a query may be affected by any or allinformation associated with an item(s). Any information indicated in thedatabase 120 (FIG. 1) may be used to determine a ranking(s) and/orrating(s).

A category record such as the category record 1100 may compriseadditional field(s) within the scope of the disclosure herein. Anyinformation accessible by the search monitor 155 and/or indicated in thedatabase 120 (FIG. 1) may be included in a category record(s). Theinformation contents illustrated in the category record 1100 areexemplary and no limitation is implied thereby. Various ways ofrepresenting such information which are well known in the relevant artmay be utilized without departing from the spirit and scope of theembodiments disclosed herein.

A database relationship of information comprised in the database 120(FIG. 1) is illustrated in FIG. 12A. The relationship is exemplary, andalternate embodiments of the relationships and data structures may beused within the scope of the disclosure herein.

The database 120 (FIG. 1) may comprise one or more of a search monitoruser record 1205, a query record 1210, a keyword record 1215, a categoryrecord 1220, a result record 1225 and/or a searcher record 1230.

The search monitor user record 1205 may include information of a searchmonitor user. The information included in the search monitor user record1205 may indicate a query(ies), a searcher(s), a search engine(s), arating(s), a ranking(s) and/or other information associated with a useror search monitor user.

The query record 1210 may include information of a query. Theinformation included in a query record 1210 may indicate a user(s), akeyword(s), a category(ies), a searcher(s), a search engine(s), aresult(s), a rating(s), a ranking(s), and/or other informationassociated with a query.

The keyword record 1215 may include information of a keyword, acategory(ies), a searcher(s), a rating(s), a ranking(s) and/or otherinformation associated with a keyword.

The category record 1220 may include information of a category ortaxonomy branch, a searcher(s), a rating(s) and/or other informationassociated with a category.

The result record 1225 may include information of a search result and arating(s) associated with a search result. For example, a URL, a guidecomment, a snippet, a tag, access information, and/or any otherinformation of a search result may be included in the result record1225. Likewise any rating information such as user rating(s), guideratings(s), and/or any other ranking and/or rating informationassociated with a search result(s) may be indicated in the result record1225.

The searcher record 1230 may include information of a searcher, aquery(ies), a keyword(s), a category(ies), a profile(s), a result(s), adevice(s), a service(s), a rating(s), a ranking(s) and/or otherinformation associated with a searcher.

The association between the records indicated in FIG. 12A may be used toobtain information based on a pointer(s) in the records. For example, akeyword, category, and/or result ID associated with a query record mayinclude a searcher ID which may be used to obtain information of asearcher using a searcher record associated with the searcher ID. A userID indicated in a query record may be used to obtain information of auser using a search monitor user record associated with the user ID.Various types of information might be selected using database processingwhich is well known in the relevant art.

The relationships illustrated in FIG. 12A may be used in conjunctionwith and/or in addition to any other information included in thedatabase 120 (FIG. 1) to rank and select a searcher(s) and/or a searchresult(s) and/or other information associated with one or more of aquery, a keyword, a category, etc., as will be further described hereinbelow. Any of the records described herein may contain additionalfields, and one or all of the fields may be blank.

An exemplary data structure related to determining whether an alternatesearch result(s) is available is illustrated in FIG. 12B. A search queryrecord 1250 is created which includes information of a search query,keywords, categories, and a user associated with the query. The querymay be submitted to the primary search system 160 (FIG. 1) which mayprovide information such as that indicated in the primary search systemresults table 1255. The alternate search system 130 may rank searchresults based on for example the keywords and categories and/or otherinformation associated with a query to produce the information indicatedin the alternate search system results table 1260. In at least oneembodiment, the entire query string is a keyword.

In order to determine whether an alternate search result is available,the alternate search system 130 (FIG. 1) and/or the search monitor 155may compare a search result(s) from the alternate search system 130 anda search result(s) from the primary search system 160, and may forexample eliminate any search result(s) ranked in the top 20 searchresults by the primary search system 160. A rating(s) of the searchresult(s) may be adjusted based on the content of the primary searchsystem results table 1255. Using the example illustrated in FIG. 12B,the ‘Result 1’ result 1266 and the ‘Result 2’ result 1268 might have alow ranking for a user of the search monitor ‘chachahelper 1000’ whichis associated with the search engine ‘primary search system 1’. Usingthe example in FIG. 12B, the user of the search monitor ‘chachahelper1000’ might be notified of the ‘Result A’ result 1262, the ‘Result B’result 1264 and the ‘Result C’ result 1270 responsive to the query ‘whois brown leaves?’

If a user submits a query for which no alternate search result(s) isavailable, a searcher with a high ranking relating to the category(ies),keyword(s), and/or the primary search engine(s) associated with thequery may be selected to provide a search result(s) responsive to thequery. For example, as the guide ‘Paula 1126’ produced a highly ratedsearch result such as the ‘Result A’ result 1262 and the ‘Result B’result 1264 responsive to a query associated with the search system‘primary search system 1’, the guide ‘TomC 1023’ produced a highly ratedsearch result such as the ‘Result C’ result 1270 and a duplicate of aresult from the primary search system such as the ‘Result 2’ result1268, and the guide ‘Sergei1 1000’ produced the ‘Result1’ result 1266which was duplicated by the primary search system, the searcher ‘Paula1126’ may be more likely to be selected to provide a search result to auser query associated with the search service ‘primary search system 1’,than the searcher ‘TomC 1023’ who may be more likely to be selected thanthe searcher ‘Sergei1 1000’.

The ranking of a search result(s) illustrated in FIG. 12B may be basedon any information indicated in the database 120 (FIG. 1), including anyselected combination of information pertaining to a result, a query, auser, a searcher, etc.

As illustrated in FIG. 13, a process 1300 for performing an informationsearch is provided. The process 1300 may be operative on the alternatesearch system 130 (FIG. 1) and/or the user system 135.

In operation 1305 a determination is made as to whether a search requestassociated with a search monitor is received. If in operation 1305 it isdetermined that a search request associated with a search monitor is notreceived control remains at operation 1305 and process 1300 continues.If in operation 1305 it is determined that a search request associatedwith a search monitor is received control is passed to operation 1310and process 1300 continues.

In operation 1310 search results associated with a query are rated. Therating may be based on a keyword(s), a category(ies), and/or otherinformation associated with the query. For example, a search result maybe rated based on information regarding voting by a searcher or guide(s)associated with a keyword(s) and/or category(ies) associated with aquery, based on a ranking of a guide who produced a search result and/orany other rating information within the scope of this disclosure.Control is passed to operation 1315 and process 1300 continues.

In operation 1315 search results associated with a query are rated basedon information of a search monitor(s) associated with the query. Forexample, a search result may be rated based on a ranking from a searchengine(s) indicated in a search monitor user record, such ranking may bebased on order of presentation from a search system, and/or any otherinformation associated with a search result(s). Any informationindicated in the database 120 (FIG. 1) may be used to determine a ratingof a search result(s) based on a search monitor associated with a query.For example, a rating of a search result(s) may be based on a ranking(s)of a search result(s) based on a messages received by the search monitor155. Control is passed to operation 1320 and process 1300 continues.

In operation 1320 a search result(s) associated with a query are sorted.The sort operation in operation 1320 may be based on rating and/orranking information determined in operation 1310 and/or operation 1315and/or other information included in the database 120 (FIG. 1). Forexample, if a search result is ranked higher than fifth according to therating information in operation 1310 and is not rated above tenth in aranking from operation 1315, it may be ranked according to its rating inoperation 1310. In at least one embodiment, the rating from operation1310 is based on information of voting by human guides and a searchresult must be judged to be superior to the 3 top-ranked results fromoperation 1315. Any process for ranking a search result(s) based onranking information from operation 1310 and 1315 may be used within thescope of this disclosure. Control is passed to operation 1325 andprocess 1300 continues.

In operation 1325 a search result(s) is presented to a user responsiveto a search request. The order of presentation of a search result(s) maybe based at least in part on the order determined by the sortingperformed in operation 1320 and/or other information included in thedatabase 120 (FIG. 1), such as a contractual relationship with a numberof customers, a random number, etc. In at least one embodiment, theorder of presentation is directly related to the order determined by thesort in operation 1320. Control is passed to operation 1305 and process1300 continues.

The presentation of a search result(s) in operation 1325 may be done invarious ways. In at least one embodiment, the search monitor 155(FIG. 1) may present a notification to a user via the user system 135 ifone or more search result(s) associated with a human searcher which arenot returned on the first page of results from the primary search engine160 are identified in operation 1320.

If no search result(s) is identified to be provided to a user(s) inoperation 1325, a guide(s) may be selected to respond to a queryassociated with a search monitor such as the search monitor 155 (FIG.1). If a selected guide(s) is available to provide a live interactivesearch session, such information may be presented to a user of thesearch monitor 155. A selected guide(s) may be notified of a query andmay perform a search responsive to the query to provide a searchresult(s) which may be presented to a user(s). A searcher may beselected based on various factors including but not limited toavailability, expertise, knowledge in a particular field, rating,ranking, affiliation, demographic, geographic, personality, interests,etc.

As illustrated in FIG. 14, a process 1400 for selecting a searcher orguide to respond to a query or search request is provided.

In operation 1405 a determination is made as to whether a search queryor request associated with a search monitor is received. If it isdetermined in operation 1405 that a search query associated with asearch monitor is not received control remains at operation 1405 andprocess 1400 continues. If it is determined in operation 1405 that aquery associated with a search monitor is received control is passed tooperation 1410 and process 1400 continues.

In operation 1410 a guide(s) associated with a query are rated based ona keyword(s), a category(ies), and/or other information associated withthe query. For example, a searcher may be rated based on voting by aguide(s) associated with a keyword(s) and/or category(ies) associatedwith a query, based on a ranking of a guide associated with acategory(ies) or keyword(s), based on a competence of a searcher, or anyrating information which may be available. Control is passed tooperation 1415 and process 1400 continues.

In operation 1415 a searcher(s) or guide(s) associated with a query arerated, including based on information of a search monitor(s) associatedwith the query. For example, a searcher may be rated based oninformation indicated in a search monitor record(s) associated asearcher and information indicated in a search monitor record(s)associated with a query. A searcher may be rated based on voting by aguide(s) selected using information indicated in a search monitor userrecord associated with a query, or any other ranking process. Forexample, if a searcher has produced a search result(s) associated with akeyword(s) and/or category(ies) of a query which was provided by asearch engine(s) indicated in a search monitor record he or she may beless or more likely to be selected to respond to a query or searchrequest. In at least one embodiment a searcher who has produced a searchresult(s) presented to a user using the process 1300 (FIG. 13) may beselected to respond to a query associated with a search monitor. Anyinformation included in the database 120 (FIG. 1) may be used todetermine a rating of a searcher based on a search monitor associatedwith a query. Any process for rating a searcher using information of asearch monitor(s) may be used within the scope of this disclosure.Control is passed to operation 1420 and process 1400 continues.

In operation 1420 a searcher(s) associated with a query are sorted. Thesort operation in operation 1420 may be based on rating informationdetermined in operation 1410 and/or operation 1415 and/or otherinformation included in the database 120 (FIG. 1). For example, if asearcher(s) or guide is ranked first or second according to ratinginformation in operation 1410 and is ranked first according to ratinginformation in operation 1415 a guide may be ranked first, or ratinginformation from operation 1410 may be averaged with rating informationin operation 1415 and a searcher(s) may be ranked based on a resultingrating(s). In at least one embodiment, a ranking from operation 1410 isnot used and a ranking from operation 1415 is used to sort a guide(s).Any ranking process based on information from operation 1410 and/or 1415may be used within the scope of this disclosure. Control is passed tooperation 1425 and process 1400 continues.

In operation 1425 a searcher(s) or guide(s) is selected to respond to asearch request. The selection may be based at least in part on an orderdetermined by the sorting performed in operation 1420, and/or otherinformation included in the database 120 (FIG. 1). In at least oneembodiment, a search request may be offered to a searcher(s) in an orderdetermined by the sort in operation 1420 and a guide may be allowed atime period (e.g., 15 seconds) in which to respond. Alternately, anyguide(s) with a ranking greater than a pre-determined value (e.g., thetop three guides) may be offered an opportunity to respond to a query.Information such as availability (i.e., a guide being logged-in),membership in an affiliate group, membership in a list of preferredsearchers associated with a user, and/or any other information indicatedin the database 120 may be used to select a searcher. Any selectioncriteria may be used within the scope of the embodiments disclosedherein. Control is passed to operation 1405 and process 1400 continues.

A GUI 1500 whereby a user may be notified of a search result(s) and/or asearcher is illustrated in FIG. 15A. Information obtained using the GUI1500 may be used to determine if a user elects to view a searchresult(s) provided by the alternate search system 130 (FIG. 1).

The GUI 1500 may include an advertising window 1505, an action button1510, primary search engine controls 1515, primary search engine resultindicators 1520, and a primary search engine result table 1525.

The advertising window 1505 may present an advertisement(s) selected bythe alternate search system 130. The selection of an advertisement maybe related to any information which is indicated in the database 120.More than one advertising window 1505 may be included in the GUI 1500(FIG. 15A). In at least one embodiment, the advertising window 1505 mayinclude an incentive for a user to view a search result(s) provided bythe alternate search system 130 (FIG. 1).

The ‘Try a ChaCha WebGem™’ action button 1510 may indicate informationregarding a search result(s) and/or a searcher(s) (or guide(s)) selectedby the alternate search system 130. The ‘Try a ChaCha WebGem™’ actionbutton 1510 may be used to view a search result(s) provided by thealternate search system 130 (FIG. 1). Information may displayed usingthe action button 1510 (FIG. 15A) based upon any information indicatedin the database 120 and/or the user system 135. For example, instead ofproviding a user the option to view a search result(s) a user may beprovided an option to submit a query to a guide(s) who may notify a userif a search result is obtained responsive to the query. While only asingle action button 1510 is provided in the GUI 1500, multiple actionbuttons 1510 may be provided. Activation of the action button 1510 maycause the GUI 1550 illustrated in FIG. 15B to be provided.

The primary search engine controls 1515 may be used to submit a searchrequest to a search system such as the primary search system 160 (FIG.1). The primary search engine controls 1515 may include a query box 1515a, a ‘Search’ button 1515 b, an ‘Advanced Search’ control 1515 c, and a‘Preferences’ control 1515 d. The query box 1515 a may be used toindicate a query. The ‘Advanced Search’ control 1515 c may be used toselect a more complex search selection interface. The ‘Preferences’control 1515 d may be used to provide a GUI to select preferences forsearch activities associated with a primary search system. The ‘Search’button 1515 b may be used to submit a query indicated in the query box1515 a to the primary search system 160.

The primary search engine result indicators 1520 may indicateinformation of and/or provide action controls associated with a searchresult(s) provided by, for example, the primary search system 160. Theprimary search engine result indicator 1520 a provides informationassociated with the result ‘Brown Tips on Houseplant Leaves’. Theprimary search engine result indicator 1520 b provides informationassociated with the result ‘Crunchy brown leaves—UBC Botanical GardenForums’. The primary search engine result indicator 1520 c providesinformation associated with the result ‘YouTube—The mamas and thepapas—California dreamin’. The primary search engine result indicator1520 d provides information associated with the result ‘RoyalHorticultural Society—Gardening Advice: Brown Leaves on . . . ’

The primary search engine result table 1525 may present information of asearch result(s) provided by the primary search engine 160 (FIG. 1). Forexample, information of a number of search results provided by a primarysearch engine may be provided. A feature(s) associated with the primarysearch engine result table 1525 may be used by the search monitor 155(FIG. 1) to determine where a features(s) associated with theadvertising window 1505 and the action button 1510 may be inserted intothe content of a page displayed by an application such as theapplication 150 as described further herein below.

A GUI 1550 whereby a user may be presented with information associatedwith a search result(s) and/or a searcher(s) is illustrated in FIG. 15B.The information obtained using the GUI 1550 may be used to determine ifa user elects to review a search result(s) provided by the alternatesearch system 130 (FIG. 1) and/or to communicate with a searcher(s) orguide(s).

The GUI 1550 includes an alternate result window 1555, a query box 1560,an unguided search action button 1565, a guided search action button1570, and a guide indicator 1575.

The alternate result indicator 1555 may be used to provide informationof one or more search results which have been selected by the alternatesearch system 130 (FIG. 1). As illustrated in FIG. 15B, informationassociated with the search result ‘http://www.brownleaves.jp’ ispresented in the alternate result indicator 1555. A user may elect toview further details of an alternate search result(s) by for exampleclicking on the alternate result hyperlink 1557 associated with aresult. Various types of controls which are well known in the art may beused to implement the alternate result indicator 1555. Activation of thealternate result hyperlink 1577 may cause the GUI 1600 to be provided.

The query box 1560 may be used to provide information of a search query.Using the example illustrated in FIG. 15B, the query ‘Who is BrownLeaves?’ may have been submitted to a search engine, such as the primarysearch system 160 (FIG. 1). The unguided search action button 1565 (FIG.15B) may be used to submit a search query indicated in the query box1560 for a search which does not utilize the assistance of a guide.

The guided search action button 1570 may be used to submit a searchquery indicated in the query box 1560 for a search utilizing theassistance of a guide. The guide indicator 1575 may be used to provideinformation of guides available to respond to a search query and/or acategory(ies) or keyword(s) associated with a search query.

A GUI 1600 whereby a user may be provided with information of a searchresult(s) and/or may provide information regarding a search result(s) isillustrated in FIG. 15C. The information obtained using the GUI 1600 maybe used to determine relevance of a search result(s) provided by thealternate search system 130 (FIG. 1).

The GUI 1600 includes an advertising window 1605, a rating controlwindow 1610, slider bars 1612, slide arrows 1622, an ‘Agree’ button1614, a ‘Disagree’ button 1616, a ‘Submit’ button 1618, a ‘Cancel’button 1620, a search query box 1625, an unguided search button 1630, aresearch guided search button 1635, a live guided search button 1640, aresult display window 1645, and selection tabs 1650.

The advertising window 1605 may be used to provide information ofadvertisements selected by the alternate search system 130. Theselection of an advertisement may be related to any information which isindicated in the database 120 (FIG. 1). More than one advertising window1605 may be included in the GUI 1600. In at least one embodiment, theadvertising window 1605 may include an incentive for a user to utilize aservice(s) of the alternate search system 130. In at least oneembodiment, an advertisement(s) selected by a guide(s) may be presentedin the advertising window 1605.

The controls provided in the rating control window 1610 may be used toindicate user preferences regarding a search result(s) presented in theresult display window 1645. The rating control window 1610 may includethe slider bars 1612 and the slide arrows 1622. The slider bars 1612 mayindicate a system determination of a rating of a search result. Theslide arrows 1622 may be used to indicate a user opinion regarding arating of a search result. The slider bar 1612 a indicates that thesearch system considers the search result indicated in the resultdisplay window 1645 to be more ‘Global’ and less ‘Local’. The slider bar1612 b indicates that the search system considers the search resultindicated in the result display window 1645 to be equally ‘Techno’ and‘Jazz’. The slide arrow 1622 a indicates that the user considers thesearch result indicated in the result display window 1645 to be less‘Global’ than the search system, and the slide arrow 1622 b indicatesthat the user considers the search result indicated in the resultdisplay window 1645 to be less ‘Techno’ than the search system.

The ‘Agree’ button 1614 may be used to indicate that a search result iscorrectly characterized by the slide bars 1612. The ‘Disagree’ button1616 may be used to indicate that a search result is not correctlycharacterized by the slide bars 1612. The ‘Submit’ button 1618 may beused to record opinions provided using the slide arrows 1622. The‘Cancel’ button 1620 may be used to discard opinions provided using theslide arrows 1622.

While the rating controls have been illustrated using slide bars,indicator arrows and action buttons, and a limited number of controlsand specific parameters, any number of controls, and other types ofinterface controls which are well known in the art may be used to obtainrating information regarding a search result(s) within the spirit andscope of the embodiments herein.

The search query box 1625 may be used to provide information of a query.The search query box 1625 may indicate any information associated with aquery, such as a categorization, a profile and/or other informationwhich may be associated with a query.

The unguided search button 1630 may be used to submit informationindicated in the search query box 1625 for a search which does notutilize the assistance of a human guide.

The research guided search button 1635 may be used to submit informationindicated in the search query box 1625 for a search by a humansearcher(s) which does not request a live, interactive search session.Such a search may allow a user to receive a search result(s) which maybe produced by a human searcher which may be provided at a later time. Anotification may be sent to a user if such a result is provided. Forexample, an SMS, EMS or MMS message, an email message, an instantmessage (IM), an indication using the search monitor 155 (FIG. 1) and/orany notification method which may utilize a communication service(s)associated with a user may be utilized.

The live guided search button 1640 may be used to submit informationindicated in the search query box 1625 for a search which requests alive, interactive search session with a human searcher. Such a sessionmay allow a user to receive a search result(s) which may be produced bya human searcher in a live, interactive session.

The result display window 1645 displays information of a searchresult(s). In at least one embodiment, the search result indicated inthe result display window 1645 is a result(s) indicated to a user by thesearch monitor 155 (FIG. 1). Using the example illustrated in FIG. 15C,information related to the search result ‘www.brownleaves.jp’ ispresented in the result display window 1645. The navigation controls1655 a may be used to navigate within the content of the result displaywindow 1645. The navigation controls 1655 b may be used to navigatewithin the content of the rating control window 1610.

The selection tabs 1650 may be used to select to view information of asearch result(s). Using the example illustrated in FIG. 15C, theselection tab 1650 a may allow a user to view information related to thesearch result ‘www.brownleaves.jp’ and the selection tab 1650 b mayallow a user to view information associated with the search result‘www.science.org\leafscience’. Information of any or all search resultsindicated by the search monitor 155 (FIG. 1) may be made available forreview using the selection tabs 1650.

As illustrated in FIG. 16, a process 1700 of inserting a notificationsuch as the advertising window 1505 (FIG. 15A) and The ‘Try a ChaChaWebGem™’ action button 1510 described with respect to FIG. 15A in a webpage is provided. The process 1700 may be operative on the user system135. For example, the search monitor 155 (FIG. 1) may operate oninformation in the application 150, which may be for example a browser.

In operation 1705 a determination is made as to whether an alternate(“alt”) search result is detected. If in operation 1705 it is determinedthat an alternate result is not detected, control remains at operation1705 and process 1700 continues. If in operation 1705 it is determinedthat an alternate search result is detected, control is passed tooperation 1710 and process 1700 continues.

In operation 1710 a message returned by for example the primary searchsystem 160 (FIG. 1) is analyzed or scanned to locate a feature withinthe information which may allow the hypertext and/or other informationassociated with a notification mechanism to be inserted into theinformation. In at least one embodiment, the search monitor 155 (FIG. 1)which may be an extension to a browser may scan a web page prior topresenting such information to the application program 150. Control ispassed to operation 1715 and process 1700 continues.

In operation 1715 a determination is made as to whether a feature islocated in a message such as a web page returned for example by a searchsystem, such as the primary search system 160 (FIG. 1). If in operation1715 it is determined that a feature is not found, control is passed tooperation 1720 and process 1700 continues. If in operation 1715 it isdetermined that a feature is found, control is passed to operation 1725and process 1700 continues.

The determination in operation 1715 may be based on various criteria. Inat least one embodiment, a hypertext element is identified which is tobe located in a web page. If such an element is located based onanalysis of a web page, it is determined that a feature is found.Alternately more than one element and/or a combination of elements maybe identified which may be found in a web page and/or other informationprovided to the user system 135 (FIG. 1). For example an element(s) maybe located based on information associated with a search query, etc. Anyinformation included in a message received by a user system may beexamined to determine whether a feature is found.

In operation 1720 information regarding the scanning process isrecorded. A message(s) may be transmitted. For example a message may besent to the alternate search system 130 (FIG. 1). A message(s) mayinclude information to indicate that a feature was not located in a webpage such as a web page returned by the primary search system 160. Forexample, if a search monitor detects a transmitted message which isassociated with a search system, and a response message does not includean expected feature, the search monitor may transmit a message to thealternate search system 130 to indicate that an unexpected event hasoccurred. A transmitted message(s) may include any or all content of amessages received by the user system 135. A message(s) may be received.For example a message(s) may be received from the alternate searchsystem 130. A message(s) received may include information which mayalter a criteria used to determine if a feature is found. For example afeature(s) which may be found to insert a notification element may beincluded in a message(s) received. A search monitor log and the database120 are updated. Control is passed to operation 1705 and process 1700continues.

In operation 1725 a notification is added to an interface. For example,an element may be inserted into a web page such as a web page returnedby the alternate search system 160 (FIG. 1) as described further hereinwith respect to FIG. 17. A message(s) may be transmitted. For example amessage(s) may be transmitted to the alternate search system 130 (FIG.1), which may indicate information of a primary search system such asthe primary search system 160, and/or the user system 135. A message(s)may be received. For example a message(s) may be received from thealternate search system 130. A message(s) received from the alternatesearch system 130 may indicate a change(s) in the behavior of the searchmonitor 155. A search monitor log and the database 120 are updated.Control is passed to operation 1705 (FIG. 16) and process 1700continues.

As illustrated in FIG. 17, a web page may be composed of hypertextmark-up language (HTML) elements which may include various features. Aweb page may include any elements defined in a standard such as the HTML4.0 standard published by the W3C consortium. A web page may includeactive elements such as a Java® applet(s). A simplified web page is usedfor the purposes of illustration.

An alternate search result notification 1840 may include a HTMLelement(s) which defines the content and behavior of a search resultnotification. Using the example illustrated in FIG. 18, an element(s)may be inserted in a web page based on detecting a HTML element such asa ‘<div>’ tag. The start of a script element is indicated by the‘<script>’ tag 1805. The end of a script element is indicated by the‘</script>’ tag 1810. Likewise a table element begins with the ‘<table>’tag 1815 and ends with the ‘</table>’ tag 1820. Such an element may forexample be rendered by an application such as a browser as the primarysearch engine results indicator table 1525 (FIG. 15A). Likewise adivision element may begin with the <div> tag 1825 and end with the</div> tag 1830. Such an element may for example be rendered as theprimary search engine result indicator 1530 (FIG. 15A). As the ‘<divid=res>’ tag 1835 is unique within the HTML illustrated in FIG. 18, itmay be used to determine a point at which an HTML element such as thealternate search result indicator 1840 may be inserted into a web pagedescribed by HTML which is received from a source such as the primarysearch system 160 (FIG. 1). This may for example cause the advertisingwindow 1505 (FIG. 15A) and the action button 1510 to be rendered in abrowser application.

While insertion of an alternate search result indicator has beendescribed with reference to a specific example of HTML elements, nolimitation is implied thereby. Any element(s) may be used to render analternate search result indicator, and any element(s) may be utilized todetermine the insertion point for an alternate search result indicatorto be edited into a web page within the scope of the embodiments herein.Any version of a generalized mark-up language (GML) such as XHMTL 1.0,HTML 4.x, etc. may be utilized within the scope of the embodimentsherein.

In other embodiments, a notification may be provided to a user by othermechanisms than insertion of information into a web page. In at leastone embodiment, a notification may be provided by presenting anotification button in the margin of an application such as a browser asillustrated in FIG. 18, or may be provided in a notification area suchas the ‘system tray’ in a Windows® environment. In other embodiments, anotification may be provided using a ‘pop-up’ window, or an interstitialpage as illustrated in FIG. 19. For example, if the search monitor 155is a service, an indication may be provided as a notification ‘pop-up’if a search result is obtained by a searcher responsive to a searchrequest.

A GUI 1900 whereby a user may be notified of a search result(s) and/or asearcher is illustrated in FIG. 18. Information obtained using the GUI1900 may be used to determine if a user elects to view a searchresult(s) provided by the alternate search system 130 (FIG. 1).

The GUI 1900 includes an advertising window 1905, an action button 1910,primary search engine controls 1915, primary search engine resultindicators 1920, and a primary search engine result table 1925.

The advertising window 1905 may present an advertisement(s) selected bythe alternate search system 130. The selection of an advertisement maybe related to any information which is indicated in the database 120(FIG. 1). More than one advertising window 1905 may be included in theGUI 1900 (FIG. 18). In at least one embodiment, the advertising window1905 may include an incentive for a user to view a result(s) produced bythe alternate search system 130 (FIG. 1). In at least one embodiment,the advertising window 1905 may be omitted.

The action button 1910 may be used to take actions with respect toinformation obtained using the GUI 1900. The action button 1910 may beused to indicate information regarding a search result(s) and/or aguide(s) selected by the alternate search system 130 (FIG. 1). Using theexample illustrated in FIG. 18, the ‘ChaCha WebGem™’ action button 1910may be used to view information of a search result(s) provided by thealternate search system 130 (FIG. 1). Different information maydisplayed using the action button 1910 (FIG. 18) based upon anyinformation indicated in the database 120 and/or the user system 135.For example, instead of offering a user the option to view a searchresult(s) a user may be offered an option to submit a query to aguide(s) who may notify a user if a search result is provided responsiveto the query. While only a single action button 1910 is depicted in theGUI 1900, multiple action buttons 1910 may be provided to a user. Forexample, an action button 1910 to search with a guide, and an actionbutton 1910 to view a search result(s) may be provided. Activation ofthe action button 1910 may cause a GUI such as the GUI 1550 illustratedin FIG. 15B to be provided to a user.

The primary search engine controls 1915 may be utilized to submit asearch request to a search system such as the primary search system 160(FIG. 1). The primary search engine controls 1915 may include a querybox 1915 a, a ‘Go Fetch’ button 1915 b, an ‘Advanced Search’ control1915 c, and a ‘Preferences’ control 1915 d. The query box 1915 a may beused to indicate a query. The ‘Advanced Search’ control 1915 c may beused to select a more complex search selection interface. The‘Preferences’ control 1915 d may be used to provide a GUI to selectpreferences for search activities associated with a primary searchsystem. The ‘Go Fetch’ button 1915 b may be used to submit a queryindicated in the query box 1915 a to the primary search system 160.

The primary search engine results indicators 1920 may indicateinformation of and/or provide action controls associated with a searchresult(s) provided by, for example, the primary search system 160. Theprimary search engine result indicator 1920 a provides informationassociated with the result ‘News—TVWeek’. The primary search engineresult indicator 1920 b provides information associated with the result‘Brown Leaves’. The primary search engine result indicator 1920 cprovides information associated with the result ‘Brined Turkey BreastRecipe’. The primary search engine result indicator 1920 d providesinformation associated with the result ‘Brown Leaf’. The primary searchengine result table 1925 may present information of a result(s) providedby the primary search engine 160 (FIG. 1).

A GUI whereby a user may be notified of a search result(s) and/or asearcher is illustrated in FIG. 19. The information obtained using theGUI 2000 may be used to determine if a user elects to view a searchresult(s) provided by the alternate search system 130 (FIG. 1). The GUI2000 may be presented in a separate window or ‘pop-up’, or may be aninterstitial window.

The GUI 2000 includes an advertising window 2005, an action button 2010,and a skip button 2015. The advertising window 2005 may present anadvertisement(s) selected by the alternate search system 130. Theselection of an advertisement may be related to any information which isindicated in the database 120 (FIG. 1). More than one advertising window2005 may be included in the GUI 2000 (FIG. 19). In at least oneembodiment, the advertising window 2005 may include an incentive for auser to view a result(s) produced by the alternate search system 130(FIG. 1). In at least one embodiment, the advertising window 2005 may beomitted.

The action button 2010 may be used to take actions with respect toinformation obtained using the GUI 2000. The action button 2010 may beused to indicate information regarding a search result(s) and/or aguide(s) selected by the alternate search system 130 (FIG. 1). Using theexample illustrated in FIG. 19, the ‘Try a ChaCha WebGem™’ action button2010 allows a user to indicate the intent to view a search result(s)provided by the alternate search system 130 (FIG. 1). Differentinformation may displayed using the action button 2010 (FIG. 19) basedupon any information indicated in the database 120 and/or the usersystem 135. For example, instead of offering a user the option to view aresult a user may be offered an option to submit a query to a guide(s)who may notify a user if a search result is provided responsive to thequery. While only a single action button 2010 is depicted in the GUI2000, multiple action buttons 2010 may be provided to a user. Forexample, a button to search with a guide, and a button to view searchresults may be provided. Activation of the action button 2010 may causea GUI such as the GUI 1550 illustrated in FIG. 15B to be provided.

The skip button 2015 allows a user to suppress the information providedin the GUI 2000. In at least one embodiment, activation of the skipbutton 2015 may close the window associated with the GUI 2000.

The search monitor 155 (FIG. 1) may be implemented using any suitableprogramming language. Environments for languages such as C++, Delphi,Java, Python and .NET may be used to implement an extension which mayfunction as the search monitor 155. An environment such as MicrosoftVisual Studio or Borland Delphi might be used to develop a service whichmay function as the search monitor 155.

Using the methods and system described herein the services of ahuman-assisted search system may be promoted. If an alternative searchresult(s) is identified responsive to a search query submitted to aprimary search system, a user may be notified that such a searchresult(s) is available. A search result(s) selected by an alternatesearch system may be compared to a search result(s) provided by a numberof other search systems to determine whether an alternate search resultis available associated with a query. A ‘search monitor’ which may beimplemented as an extension, an application and/or a service may providea notification to a user in order that the user is aware of an alternatesearch result(s). A search monitor may be installed and may provideinformation of a user.

A search monitor may provide a notification in any suitable way. Anotification may be presented within a web page which incorporatesinformation of a search result(s) provided by a primary search system. Anotification may be provided using information located outside the mainwindow of an extended application. A notification may be provided usinga separate frame or ‘pop-up’. A notification may be provided using anycommunication system(s) associated with a user. If an alternate searchresult for a query is not available, a guide may be selected to providea search result(s) responsive to the query.

Condition(s) for providing a notification to a user may be modifiedbased on user actions, content of a search request, historicalinformation, and/or other information indicated in a search database.Action(s) of a search monitor may be modified at any time via amessage(s) and/or other information.

The many features and advantages of the claimed invention are apparentfrom the detailed specification and, thus, it is intended by theappended claims to cover all such features and advantages of the claimedinvention that fall within the true spirit and scope of the invention.Further, since numerous modifications and changes will readily occur tothose skilled in the art, it is not desired to limit the invention tothe exact construction and operation illustrated and described for thedisclosed embodiments, and accordingly all suitable modifications andequivalents may be resorted to, falling within the scope of the claimedinvention. It will further be understood that the phrase “at least oneof A, B and C” may be used herein as an alternative expression thatmeans “one or more of A, B and C.”

What is claimed is:
 1. A computer-implemented method, comprising:receiving a search request; selecting a search result based on a matchof the search request to a query; and providing an indication of thesearch result and a response of a search engine when the search resultis superior to the response of the search engine to the search requestand the search result is produced by a human searcher.
 2. The method ofclaim 1, comprising: choosing the search engine based on a selection bya user submitting the search request.
 3. The method of claim 1,comprising: ranking the search engine based on a comparison of searchresults produced by human searchers to responses of the search engine;and choosing the search engine based on the ranking of the searchengine.
 4. The method of claim 1, comprising: directing the searchrequest to a human assistant when the search result is not superior tothe response of the search engine.
 5. The method of claim 1, comprising:ranking search results associated with the query; and selecting thesearch result based on the ranking.
 6. The method of claim 1,comprising: ranking search results associated with the query based onthe match and a rating of the human searcher; and selecting the searchresult based on the ranking.
 7. The method of claim 1, comprising:determining that the search result is superior to the response based ona ranking of the human searcher and a rating of the search engine. 8.The method of claim 1, comprising: determining that the search result issuperior to the response based on a ranking of the human searcher andthe search engine for a category of the search request.
 9. The method ofclaim 1, comprising: providing the search result and the response to ahuman assistant; and determining that the search result is superior tothe response based on an action of the human assistant.
 10. The methodof claim 1, comprising: suppressing the indication when a usersubmitting the search request has not activated indicators of searchresults provided by human searchers a pre-determined number of times.11. The method of claim 1, comprising: obtaining responses by submittingthe search request to search engines; and selecting the response basedon a ranking of the responses for the query.
 12. The method of claim 1,comprising: determining that the search result is superior based on arating of the search result for the query by a user that did not submitthe search request.
 13. The method of claim 1, comprising: receiving thesearch request from an extension of an application.
 14. The method ofclaim 1, comprising: displaying information of the human searcher as apart of the indication.
 15. A system, comprising: a user systemsubmitting a search request and providing an indication of a searchresult when the search result is determined to be superior to a responseof a search engine; and a search system selecting the search resultbased on a match of the search request to a query, directing the searchrequest to the search engine, and determining whether the search resultis superior to the response.
 16. The system of claim 15 furthercomprising: a searcher system receiving the search request when thesearch result is not superior to the response.
 17. The system of claim15 wherein the searcher system receives the search request, the query,the search result and the response and provides a result to the searchsystem.
 18. A non-transitory computer readable storage medium storingtherein a program for causing a computer to execute an operationincluding promoting a search service, comprising: receiving a searchrequest; submitting the search request to a search engine; selecting thesearch engine based on a rating of the search engine; determiningwhether a search result produced by a human searcher is superior to aresponse of the search engine for the search request; and providing anindicator of the search result to a source of the search request whenthe search result is superior to the response.
 19. The computer readablestorage medium of claim 18 wherein the operation further comprises:determining the rating of the search engine based on use of the searchengine by human assistants performing searches responsive to requestsassociated with a keyword of the search request.
 20. The computerreadable storage medium of claim 18 wherein the operation furthercomprises: selecting search result based on a ranking of the humanassistant for the search request.